Se la funzione prende undici parametri, probabilmente avete dimenticato un altro
Amo questa frase, perché riassume tutto: Bad progetto richiede cattiva progettazione.
L'ho preso dal libro Standard di codifica C++: 101 regole, linee guida e best practice di Herb Sutter, Andrei Alexandrescu.
Modifica: la citazione diretta è Se si dispone di una procedura con dieci parametri, probabilmente si è perso un po 'di. È esso stesso a quote from Alan Perlis.
Le funzioni con così tanti parametri sono un sintomo di cattiva progettazione. Una delle possibilità è provare a incapsulare parte di questi parametri in un'entità/classe che ha un obiettivo definito. (non una classe di spazzatura che elencerebbe tutti i parametri senza una struttura significativa).
Non dimenticate mai il Single Responsibility Principle Di conseguenza, le classi rimangono limitati in termini di dimensioni, e di conseguenza, in numero limitato di paramters membri, e quindi limitato nella dimensione di parametri necessari per i suoi costruttori.Come uno dei commenti seguenti, la classe con così tanti parametri di costruzione può gestire troppi dettagli inutili indipendentemente dal suo obiettivo principale.
Uno sguardo a questo è consigliato anche: How many parameters are too many?
fonte
2011-01-04 10:29:10
Un costruttore che accetta 12 parametri è un odore di codice. Molto probabilmente, la tua classe sta cercando di fare troppo. –
Dai un'occhiata a questa domanda: [how-many-variables-should-a-constructor-have] (http://stackoverflow.com/questions/1434498/how-many-variables-should-a-constructor-have) Sebbene l'OP stia usando C#, le risposte sono applicabili a C++. – Tony