Probabilmente è una grande idea!
Prendo il problema dividendo le lunghe sequenze di azioni lineari in funzioni separate puramente per ridurre la lunghezza media della funzione nella base di codice:
function step1(){
// ...
step2(zarb, foo, biz);
}
function step2(zarb, foo, biz){
// ...
step3(zarb, foo, biz, gleep);
}
function step3(zarb, foo, biz, gleep){
// ...
}
Ora hai aggiunto effettivamente le righe e della sorgente riducendo notevolmente la leggibilità totale. Soprattutto se stai passando molti parametri tra una funzione e l'altra per tenere traccia dello stato. Yikes!
Tuttavia , se sei riuscito a estrarre una o più linee in una funzione pura che serve un singolo, chiaro scopo ( anche se chiamato una sola volta ), quindi hai migliorato la leggibilità:
function foo(){
f = getFrambulation();
g = deglorbFramb(f);
r = reglorbulate(g);
}
Questo probabilmente non sarà facile nelle situazioni del mondo reale, ma pezzi di pura funzionalità possono spesso essere presi in giro se ci pensate abbastanza a lungo.
Saprai di essere sulla strada giusta quando hai delle funzioni con nomi di verbo di qualità e quando la tua funzione genitrice li chiama e l'intera cosa si legge praticamente come un paragrafo di prosa.
Poi, quando ritorni settimane dopo per aggiungere più funzionalità e scopri che puoi riutilizzare una di quelle funzioni, allora oh, gioia estatica! Che meraviglia meravigliosa!