En programmation orientée objet, il n’existe bien sûr pas de règle exacte sur la longueur maximale d’une méthode, mais j’ai quand même trouvé ces deux citations qui se contredisaient un peu, je voudrais donc connaître votre opinion.
Dans Clean Code: A Handbook of Agile Software Craftsmanship , Robert Martin déclare:
La première règle de fonctions est qu'ils doivent être petits. La deuxième règle de fonctions est qu'ils doivent être plus petits que cela. Les fonctions ne doivent pas comporter 100 lignes. Les fonctions ne devraient pratiquement jamais être longues de 20 lignes.
et il donne un exemple du code Java qu'il voit de Kent Beck:
Chaque fonction de son programme ne comptait que deux, trois, ou quatre lignes. Chacun était transparent. Chacun a raconté une histoire. Et chacun vous a conduit à l'autre dans un ordre convaincant. Voilà comment vos fonctions devraient être courtes!
Cela sonne bien, mais d'autre part, dans Code Complete , Steve McConnell dit quelque chose de très différent:
La routine doit pouvoir croître de manière organique jusqu’à 100-200 lignes, des décennies de données indiquent que les routines d’une telle longueur ne sont plus sujettes aux erreurs, mais plus courtes.
Et il fait référence à une étude selon laquelle les routines de 65 lignes ou plus sont moins coûteuses à développer.
Ainsi, même si les opinions divergent à ce sujet, existe-t-il une meilleure pratique fonctionnelle pour vous?
switch
instruction avec 100 case
conditions est plus facile à gérer que 10 niveaux d' if
instructions imbriqués les uns dans les autres.