Ho sentito "regole" come questa sempre, ma è facile provare troppo difficile per rispettare questi tipi di regole.
Ho visto codice in cui le funzioni sono suddivise in blocchi illogici semplicemente per mantenere le funzioni brevi.
Direi che il buon senso è la regola migliore .
Nessuno riuscirà mai a trovare un numero che funzioni in ogni situazione. Se trovi un blocco logico di istruzioni che può essere rifatto in un nuovo metodo, fallo e dovresti trovare le lunghezze del tuo metodo il più possibile ragionevoli.
Se non puoi, ma ti accorgi che i metodi stanno diventando irragionevolmente lunghi, prendilo non come un segno dovresti radunarli a un numero arbitrario di righe, ma che forse qualcos'altro deve essere rifattorizzato, per esempio, forse la classe nel suo complesso ha troppa responsabilità.
Modifica: SJuan76 mostra anche un punto eccellente:
D: Quando 15 righe di codice non sono realmente 15 righe di codice?
A: Quando sono 15 righe di valori di registrazione / validazione dell'input trival / (ecc.)
Questa è una delle più grandi insidie nell'usare le linee di codice come metrica, anche se si tratta di un caso ristretto come questo. Le linee di codice non convertono / equivalgono a nessuna misura utile di "lavoro". In un ambiente 10 righe potrebbero essere sufficienti per configurare un registratore di errori, in un altro, 2 righe potrebbero essere sufficienti, direi che in entrambi i casi meriterebbe un metodo.