Un document sur les normes de codage est utile. C'est plus utile quand il est assez court pour que tout le monde puisse se souvenir de tout sans trop de problèmes et quand cela ne cause trop de douleur à personne.
La façon dont vous choisissez d'indenter le code dans votre organisation, ou de mettre en majuscule les noms, ou d'implémenter vos boucles, ou de commenter votre code n'a pas beaucoup d'importance; la partie utile est d'amener tout le monde à écrire du code qui ressemble à peu près à tout le monde.
- Cela évite d'avoir à passer une minute à recalibrer vos attentes quant à l'emplacement des accolades et à chaque fois que vous regardez le code de quelqu'un d'autre.
- Cela évite d'avoir plusieurs styles de code différents dans le même fichier.
- Peut-être plus important encore, avoir une norme écrite évite les arguments sur les pratiques de codage lors des révisions de code.
Encore une fois, ce que sont les normes n'a pas autant d'importance que d'avoir une sorte de norme simple et directe. Alors, mettez tous vos développeurs dans une pièce et laissez-les discuter de ce que devraient être les normes. Cette réunion pourrait se poursuivre indéfiniment, les règles sont donc les suivantes:
- Tout ce qui n'est pas décidé à la fin de la réunion sera décidé par le directeur.
- La réunion se terminera après deux heures, ou lorsque quelqu'un commencera à crier ou à pleurer, selon la première éventualité.
- L'ensemble de la norme tiendra (dans une taille de caractères raisonnable!) Sur une ou deux feuilles de papier, recto verso uniquement si cela est absolument nécessaire.
Envisagez d'adopter quelqu'un | d'autre | normes soit comme point de départ pour votre propre réunion de normes de codage, soit comme un moyen d'éviter complètement la réunion.
Une fois convenus, les développeurs devraient être en mesure (et devraient être censés) se contrôler. Un écart occasionnel par rapport à la norme ne devrait pas être un gros problème (et pourrait même être justifié), mais le refus spontané d'abandonner un style personnel préféré en faveur de la norme devrait entraîner une réinstallation immédiate au bureau avec les conduites d'eau qui fuient, ou autre chose .
Demian Brecht pointe les outils à charpie. Ce sont un complément parfait à un document de normes de codage. Il est simplement bon de s'en tenir aux normes de style de codage ; il est important de s'en tenir aux normes de codage relatives aux pratiques dangereuses. Personne d'autre que l'auteur ne vérifiera que chaque ligne de code respecte la norme de style, mais vous devriez certainement envisager de créer un outil lint dans le flux de travail de votre équipe pour détecter automatiquement les bogues potentiels. De plus, l'outil lui-même peut codifier les pratiques acceptées afin que vous n'ayez pas à les répertorier toutes individuellement dans les normes de codage; spécifiez simplement la configuration de l'outil.
Remarque: L'idée de «normes de codage» n'est pas unique à la programmation. Les «normes de codage» sont utilisées dans de nombreux domaines, parfois au sein d'une organisation, plus souvent dans l'ensemble d'une industrie ou d'une profession. Quelques exemples:
Dans chaque cas (et dans bien d'autres), un praticien compétent pourrait facilement comprendre un "code" qui ne répond pas à la norme attendue. Pourquoi tant d'industries persistent-elles à rédiger des exigences détaillées pour les documents qui n'ont même pas besoin d'être analysés par un compilateur? Parce que le style compte . La présentation des informations dans un style standard permet au lecteur de se concentrer entièrement sur le contenu, accélère la lecture et facilite la compréhension, et réduit les erreurs.