Coding Rules: Programmation et conventions de nommage

computer-cartoon-happy-guy2En programmation, s’il y a bien une chose importante, c’est de donner des noms compréhensibles à ses classes, méthodes, variables… Il m’est arrivé au début de ma carrière de créer une interface et une classe abstraite, selon les besoins d’implémentation, pour implémenter ce que j’appelais des « Managers » d’objets…

Seulement voila, à l’époque, ils étaient beaux mes managers d’objets. Ils contenaient en fait des méthodes d’accès à la base de données et géraient aussi l’accès au cache. En quelque sorte, c’était des repositories mélangés à des services et d’autres choses plus obscures…

Puis avec le temps sont venus se greffer dans ces classes (Open/Closed Principle es tu là? Non :), m’enfin passons) des tas de méthodes toutes plus diverses les unes que les autres, à tel point que les managers sont devenus des gestionnaires de tout et n’importe quoi.

Tout ça pour dire que le mot manager est à proscrire lors de vos développements. Beaucoup de classes sont gestionnaires d’un processus appliqué à d’autres classes. « Manager » est un terme trop générique.

Le nommage de vos objets doit être le plus précis possible. Si vous avez eu la bonne idée de respecter des principes tels que le Single Responsibility Principlecela vaut alors le coup que le nommage décrive avec précision la « Single Responsibility » implémentée par la classe ou la méthode.

Rappelez vous toujours que le nommage semble a priori le bon au moment où vous codez car vous êtes dans le bain. Alors demandez à quelqu’un qui ne sait pas ce que vous faites de deviner ce que fait votre méthode ou votre classe juste en lui donnant son nom, ça pourra déjà vous donner une idée pour savoir si le nommage choisi est vraiment adapté…

Advertisements

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s