7 + 1 conseils pour nommer les variables

((/dotclear/public/programmation.gif|Programmation|L|Programmation, aoû 2009))J’ai traduit un article plein de bon sens provenant du blog de Alberto Gutierrez : « ++[7+1 tips for naming variables|http://www.makinggoodsoftware.com/2009/05/04/71-tips-for-naming-variables/|en]++ ».%%% %%% > __1. Le nom de la variable doit être aussi descriptif que possible. N’utilisez pas de noms génériques.__%%% > %%% > Bons exemples : daysDateRange, flightNumber, carColor.%%% > Mauvais exemples : days, dRange, temp, data, aux, …%%% > %%% > Beaucoup de développeurs vont préférer donner des noms courts aux variables plutôt que des noms descriptifs pour gagner du temps lorsqu’il tape le code, mais qui s’en soucie ? Cela ne contribue pas à améliorer la qualité du logiciel, cela permet seulement de gagner quelques minutes par jour (maximum) et par développeur, alors que, lorsque les noms de variables sont descriptifs, la qualité générale du logiciel va augmenter parce que ce sera plus facile de lire et modifier le code.%%% > %%% > __2. Le nom de la variable doit être aussi court que possible.__%%% > %%% > Cette règle va de pair avec la première règle, les noms des variables doivent être aussi courts que possible, mais aussi descriptif que possible. Cela signifie que même si nous continuons à essayer de trouver des noms courts, nous accordons la priorité à des noms descriptifs plutôt qu’à des noms courts, et nous ne faisons que prendre le plus court quand ils sont aussi descriptifs que le plus long.%%% > %%% > Mauvais exemples: howLonDoesItTakeToOpenTheDoor, howBigIsTheMaterial, …%%% > Bons exemples: timeToOpenTheDoor, MaterialSize.%%% > %%% > __3. D’accord pour utiliser des abréviations, mais expliquez l’abréviation par un commentaire.__%%% > %%% > Parfois, pour avoir un nom bien descriptif, il est nécessaire de produire des noms de variables très longs, ce qui est bien, mais la taille du nom de la variable peut être améliorée en utilisant des abréviations, assurez-vous simplement que, lorsque la variable est déclarée, il y a un commentaire qui explique sa signification.%%% > %%% > __4. Utilisez la notation Hongroise si nécessaire.__%%% > %%% > Il y a un ++[très bon billet de Joël|http://www.joelonsoftware.com/articles/Wrong.html|en]++ qui explique ce qu’est la notation hongroise et comment l’utiliser. Fondamentalement, il est dit que lorsque une méthode de codage que nous avons les mêmes variables d’exploitation des données, mais aussi avec différents types, la notation hongroise peut nous aider. Fondamentalement, il est dit que si dans une méthode on code avec des variables exploitant des données identiques, mais de types différents, la notation hongroise peut nous aider.%%% > %%% > Exemple : imaginer une méthode qui reçoit des pommes, et qui classe les pommes selon leurs couleurs, et finalement écarte celles qui ne sont pas assez mûres. Nous pouvons utiliser dans cet exemple les noms de variables suivants : incoming_apples, red_apples, yellow_apples, notMaturedYellow_apples, maturedGreen_apples, …%%% > %%% > __5. N’utilisez pas de logique négative pour vos noms de variables.__%%% > %%% > Bon exemple : IsEnabled.%%% > Mauvais exemple : IsNotEnabled.%%% > %%% > Il est toujours plus facile de lire et comprendre un énoncé qui est exprimé dans un langage dans la forme positive que dans sa forme négative.%%% > %%% > __6. Soyez cohérent.__%%% > %%% > Si vous avez utilisé un nom de variable appelé « customer » dans une méthode, alors il ne faut pas l’appeler « client » dans la méthode suivante, ou si vous utilisez une abréviation dans une méthode, utilisez-la pour toutes les autres méthodes.%%% > %%% > __7. Faites correspondre la terminologie du métier de l’application avec vos noms.__%%% > %%% > Dans différents domaines, différents concepts ont des sens très différents et précis, par exemple, « ordre » ne signifie pas toujours la même chose dans les différents domaines, essayez donc de faire correspondre ces concepts spécifiques à vos noms de variable de sorte que lorsque vous nommez quelque chose avec le nom d’un concept provenant du domaine métier de l’entreprise, cela signifie exactement la même chose.%%% > %%% > Exemple : Si votre client considère que « order » est juste une « commande » qui a été acceptée, n’utilisez pas « order » pour nommer dans votre code une commande non acceptée, appelez-la dans ce cas « nonApprovedOrder ».%%% > %%% > __Règle d’or. Investissez quelques minutes pour penser à vos noms de variables.__%%% > %%% > Si vous vous retrouvez à écrire des noms de variables dès que vous en avez besoin dans votre code sans même réfléchir une seconde à leur nom, vous êtes probablement en train de choisir de mauvais noms.%%% > Si vous essayez toujours d’avoir de bons noms de variables, et que vous y avez consacré quelques minutes pour trouver le meilleur nom, même si vous ne suivez pas les autres conseils, vous allez probablement utilisé de très bons noms de variables dans votre code.%%% %%% —- ((/dotclear/public/traductions/Kanban-sign-icon.png|Kanban sign|L|Kanban sign))Retrouvez l’intégralité de mes traductions sur le wiki ++[Traductions Agiles|http://www.fabrice-aimetti.fr/dokuwiki/doku.php/traduction:start|fr]++.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *