Durante le revisioni del codice, un paio di sviluppatori hanno raccomandato di suddividere i miei metodi in metodi più piccoli.
La loro giustificazione era (1) una maggiore leggibilità e (2) la traccia posteriore che ritorna dalla produzione mostrando che il nome del metodo è più specifico della linea di codice che ha fallito. Potrebbero esserci anche delle parole colorate sulla programmazione funzionale.
Inoltre, penso che potrei aver fallito un'intervista qualche tempo fa perché non ho dato una risposta accettabile su quando interrompere le cose.
La mia inclinazione è che quando vedo un mucchio di metodi in una classe o attraverso un mucchio di file, non mi è chiaro come fluiscono insieme e quante volte ognuno viene chiamato. Non ho davvero un buon feeling per la linearità di esso tanto rapidamente solo osservandolo.
L'altra cosa è che molte persone sembrano privilegiare l'organizzazione rispetto ai contenuti (es. "Guarda come è organizzato il mio cassetto per calze!" Io: "In generale, penso che potrei arrivare più velocemente ai miei calzini se conti il tempo necessario per organizzarli ').
I nostri requisiti di business non sono molto stabili. Temo che se le classi / metodi sono molto granulari ci vorrà più tempo per rifattorizzare le modifiche dei requisiti. Non sono sicuro di quale dovrebbe essere il fattore.
In ogni caso, l'informatica è in parte arte / scienze parziali, ma non sono sicuro di quanto questo si applichi a questo problema.
EDIT: