Probablement, la situation de base est familière à tout le monde. Vous avez convenu de certaines normes de codage dans votre équipe et il est maintenant temps de vous assurer que tout le monde les respecte.
Certains le font via une programmation couplée lourde, d'autres maintiennent une liste de normes de codage et effectuent une révision manuelle. D'autres utilisent même l'outil d'analyse de code statique de Visual Studio pour s'assurer que les normes de codage sont appliquées.
Quelles sont vos meilleures pratiques pour garantir les normes de codage? Quels outils utilisez-vous - y a-t-il des outils essentiels que chaque développeur devrait connaître? Comment intégrez-vous la standardisation de votre code dans vos outils de développement?
la source
Tout d'abord, assurez-vous que vous disposez d'un serveur de génération approprié qui génère en continu votre code. TFS ou Jenkins / Hudson + Msbuild sont de bonnes options. Sur ce serveur de build, vous exécutez bien sûr des tests et vous pouvez également exécuter une analyse de code statique ainsi que des vérificateurs de syntaxe.
Je recommande d'utiliser FxCop ou Gendarme pour l'analyse de code statique. Les deux peuvent être utilisés côte à côte.
Une clé importante du succès: ne les déployez pas avec un ensemble de règles massif et attendez-vous à ce qu'il fonctionne bien. Vous aurez des millions d'avertissements et personne ne s'en souciera.
Les règles de base sont les suivantes:
Ayez toujours zéro avertissements. Si nécessaire, réduisez d'abord l'ensemble des contrôles, puis ajoutez de nouveaux contrôles à chaque sprint et corrigez-les. Assurez-vous que chaque vérification effectuée a une valeur réelle pour vous et est conforme à vos normes.
Si vous avez des règles spécifiques à un domaine que vous devez respecter, n'ayez pas peur d'implémenter vos propres règles.
Pour la vérification de la syntaxe, utilisez StyleCop ou StyleCop for Resharper si vous utilisez Resharper (ce que je recommande vivement également).
la source
StyleCop et FxCop sont mes outils légers qui rappellent les styles de code à mes développeurs. Resharper est également bon, mais il rend VS très lent.
Je recommande FxCop en raison de sa riche bibliothèque de règles, avec une excellente documentation, des classifications, des exemples et de nombreuses autres fonctionnalités.
Il existe également une extension StyleCop Fixer pour Visual Studio, qui aide à corriger les erreurs ordinaires.
Les métriques de code sont également parfois affectées par les styles de code. Vous pouvez surveiller la maintenabilité des codes avec cet outil.
la source
Je tiens à souligner que l'analyse automatique du code déjà mentionnée (FxCop, StyleCopy, builds CI, etc.) fonctionne en premier, de préférence aux révisions manuelles. Les vérifications automatiques ramasseront beaucoup plus de choses qu'une révision manuelle ne le fera probablement, et sont normalement beaucoup plus rigoureuses, cohérentes et auto-documentées. Les révisions manuelles peuvent être bonnes pour des décisions de conception de plus haut niveau, etc., mais d'après mon expérience, elles peuvent être très subjectives et aléatoires.
la source
NDepend peut être utilisé pour appliquer diverses normes de codage sur une base de code .NET. Il contient environ 200 règles de code par défaut que vous pouvez parcourir ici . Il est également facile de personnaliser des règles existantes ou de créer vos propres règles car avec NDepend, une règle n'est qu'une requête C # LINQ .
Avertissement: je travaille pour NDepend
la source