In diversi libri di design che ho letto, a volte viene data grande enfasi al numero di metodi che una classe deve avere (considerando un linguaggio OO, come java o C # per esempio). Spesso gli esempi riportati in questi libri sono molto accurati e semplici, ma raramente coprono un caso "serio" o complesso.
Tuttavia, il range sembra essere compreso tra 5 e 8.
In un progetto ho sviluppato una classe "Note", con il suo attributo come proprietà: Titolo, Descizione, Crea Data, ecc.
Quindi alcuni metodi di base come: getRelations (se la nota è assegnata a documenti diversi), getExpiryDate , ect.
Tuttavia, procedendo nello sviluppo dell'applicazione, erano necessarie più funzionalità e, quindi, più metodi.
So che meno metodi ha una classe, più è accoppiata. Questo è davvero un buon vantaggio in termini di modularità e riusabilità, oltre che più facile da modificare.
A proposito, se nel nostro contesto non è necessario (o nemmeno senso) creare sottoclassi e tutte le funzioni necessarie sono correlate a quella classe, quanti metodi possiamo aggiungere ulteriormente?
Sono d'accordo sul fatto che avere più di 15 metodi, quindi forse un po 'di re-design potrebbe essere richiesto.
Ma anche in questo caso, se eliminare alcuni dei metodi o dell'ereditarietà non è un'opzione, quale sarebbe il modo corretto?