Je déteste les normes de codage établies, elles visent toutes à vous dire de ne pas faire quelques erreurs stupides, ou à vous dire comment formater votre code d'une manière ou d'une autre. Ce sont toutes des banalités.
Je veux dire, ils vous diront combien d'espaces à mettre entre les opérateurs, comment mettre vos variables en casse, quels préfixes de style hongrois utiliser (par exemple _ pour les membres), des conseils contradictoires (par exemple, vous ne pouvez pas appeler une classe Cxyz mais vous devez appeler une interface Ixyz), comment mettre en page votre code (mettre votre variable en haut de la classe ou en bas)
Tous sont inutiles dans l’ensemble.
Ce qui importe pour écrire du code efficace, maintenable et lisible n'est jamais mentionné dans ces normes.
Par exemple: placez-vous vos variables en haut ou en bas de votre classe? Eh bien, peu importe - ce qui importe, c'est si vous regroupez vos variables par domaine fonctionnel. C'est important (vous le saurez si vous avez déjà vu 20 variables éparpillées sur le lieu).
Ils vous disent de mettre vos accolades à certains endroits. Grosse affaire! Je peux lire du code à la fois entre parenthèses de style K&R et ANSI, cela n'a pas d'importance. Ce qui importe, c'est que toutes les classes Window soient différenciées d'une manière ou d'une autre (comme être suffixées avec Form ou Dlg ou autre) afin que vous puissiez voir quels fichiers contiennent du code de fenêtre et quels sont les objets ordinaires.
Des trucs comme celui-ci comptent beaucoup plus que les points mineurs que contiennent généralement les normes. Je ne sais pas pourquoi ils ont évolué comme ça, mais souvent ce ne sont qu'une tonne de règles qui entravent un codage efficace et productif.
Mes normes essaient de se concentrer davantage sur l'organisation du code et des fichiers. Nous avons certaines normes qui font référence à l'emplacement des fichiers. Par exemple, pour les non-développeurs, les gars peuvent regarder l'un de nos projets et récupérer immédiatement les fichiers de documentation dont ils ont besoin. De même, nous essayons de présenter le code du projet d'une manière aussi similaire à d'autres projets que pratique (note: aussi pratique, pas d'une manière fortement interdite qui peut ne pas être appropriée tout le temps) et, fondamentalement, nous essayons de faire des directives de normes qui peut être modifié au besoin.
En bref - ils sont là pour nous aider à travailler ensemble, pas comme un ensemble de règles restrictives qui doivent toujours être suivies.