Nella programmazione orientata agli oggetti, ovviamente non esiste una regola esatta sulla lunghezza massima di un metodo, ma ho ancora trovato queste due virgolette in contraddizione tra loro, quindi vorrei sentire cosa ne pensate.
In codice pulito: un manuale di agile software artigianale , Robert Martin afferma:
La prima regola delle funzioni è che dovrebbero essere piccole. La seconda regola delle funzioni è che dovrebbero essere più piccoli di così. Le funzioni non dovrebbero essere lunghe 100 righe. Le funzioni non dovrebbero quasi mai essere lunghe 20 righe.
e fornisce un esempio del codice Java che vede da Kent Beck:
Ogni funzione nel suo programma era lunga solo due, tre o quattro righe. Ognuno era chiaramente ovvio. Ognuno ha raccontato una storia. E ognuno ti ha portato al successivo in un ordine irresistibile. Ecco quanto dovrebbero essere brevi le tue funzioni!
Sembra fantastico, ma d'altra parte, in Code Complete , Steve McConnell dice qualcosa di molto diverso:
Alla routine dovrebbe essere permesso di crescere organicamente fino a 100-200 linee, decenni di prove dicono che routine di tale lunghezza non sono più soggette a errori di routine più brevi.
E dà un riferimento a uno studio che dice che le routine di 65 linee o più lunghe sono più economiche da sviluppare.
Quindi, mentre ci sono opinioni divergenti in merito, esiste una best practice funzionale per te?
switch
dichiarazione con 100 case
condizioni è più gestibile di 10 livelli di if
istruzioni nidificate uno dentro l'altro.