In Python, quando è giustificato rendere le funzioni lunghe in quelle più piccole?

-3

Dire che ho questa funzione

def function_A():
    blah
    blah
    blah
    return A

Quando è giustificato rendere la funzione lunga_A in parti più piccole, ad esempio function_B e function_C e quindi chiamare function_B e function_C all'interno della funzione_A?

    
posta Jun Jang 14.06.2017 - 21:51
fonte

2 risposte

0

Una funzione o un metodo è pensato per raggiungere solo UNO scopo. Se le funzioni si chiamano add (x, y) non è possibile avere la funzione aggiungere i numeri e quindi dividerli. Queste sono due operazioni separate.

Inoltre, per ripetere quanto detto da Timothy, se senti la necessità di commentare la tua funzione (diversa dalla documentazione della funzione header), ci sono buone probabilità che sia troppo complicato.

Inoltre, una regola empirica ancora più generica che può essere utile da tenere a mente è che probabilmente le tue funzioni non devono essere più lunghe di 35 righe.

    
risposta data 15.06.2017 - 01:31
fonte
2

una possibile regola empirica è:

when you feel the need of placing comments to "structure" the method the parts separated by these comments should go into separate method with names derived from the comments you might want to place.

È una buona abitudine mantenere un livello singolo di astrazione nei tuoi metodi. Ciò significa che chiami altri metodi o esegui calcoli, non entrambi.

    
risposta data 14.06.2017 - 21:58
fonte

Leggi altre domande sui tag