Quelles normes de codage pensez-vous sont importantes pour les projets .NET / C #? Cela pourrait être quelque chose de traiter avec des accolades bouclées et l'espacement et la pédanterie comme ça. Ou il peut s'agir de questions plus fondamentales telles que les espaces de noms à éviter dans le .NET Framework, les meilleures pratiques avec les fichiers de configuration, etc.
Essayez d'éviter de créer un article qui n'est que le corollaire d'un autre. Par exemple, il serait bien d'avoir un poste axé sur les accolades. Nous n'avons pas besoin de deux pour supporter un style par rapport à l'autre. L'idée n'est pas de voter pour la norme de votre animal de compagnie, mais plutôt de préciser ce à quoi il faut penser lors de la création des normes.
la source
Pourrait vouloir jeter un oeil à StyleCop . Vous pouvez même l'incorporer dans certains systèmes de build afin que les erreurs de style interrompent la build. Les paramètres par défaut sont généralement conformes à ce que MS suggère pour les directives (telles que publiées par d'autres).
Vous pouvez également modifier les règles fournies par défaut.
la source
Consignes de Microsoft:
la source
Nous l'avons adopté dans notre bureau. Il est écrit par Lance Hunt, et il est assez complet:
http://weblogs.asp.net/lhunt/pages/CSharp-Coding-Standards-document.aspx
la source
Commencez avec FxCop . Il vous informera des violations des meilleures pratiques dans votre code existant.
la source
J'essaie de choisir un ensemble commun de styles provenant de diverses sources. Certains qui n'ont pas été mentionnés auparavant:
la source
Je dois recommander les normes mises à disposition par SSW (une société de conseil australienne).
Pas seulement le codage, mais la gestion de projet, etc ... Une ressource incroyablement précieuse.
http://www.ssw.com.au/ssw/standards/default.aspx
la source
Les méthodes doivent être courtes
La plupart des méthodes doivent utiliser la plupart des champs d'une classe.
Choisissez bien vos noms.
Par exemple, lisez le livre Clean Code
la source
J'utilise les applications suivantes pour maintenir une norme de codage en plus des règles de camelback, du nom de la méthode, etc.
GhostDoc - Ajoute un commentaire généré automatiquement en haut de chaque méthode. L'application fournit un bon résumé initial de la méthode. (gratuit)
http://submain.com/products/ghostdoc.aspx
Resharper - analyse de code et refactoring http://www.jetbrains.com/resharper/
StyleCop - Comme un nettoyage final avant l'enregistrement à TFS. (gratuit)
http://code.msdn.microsoft.com/sourceanalysis
la source
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.
la source
Avertissement: Pragmatisme ci - dessous - La question semble être formulée pour susciter un débat sur le style "approprié" de corset bouclé, etc. Je ne supporte pas de perdre du temps sur ce non-sens.
Installez ReSharper , laissez les valeurs par défaut, faites tout ce qu'il dit.
Bénéfice - Tout le monde dans votre équipe aura le même style qui sera sacrément proche des directives de Microsoft, ne déviant que sur quelques points où les normes Resharper reflètent ce qui est réellement plus largement utilisé dans l'industrie et sont (sans doute) des améliorations.
Le moins de temps que votre équipe passe à créer et référencer un document ou un livre gigantesque, ou à tergiverser sur les inanités
curly braces
et autres, plus elles seront codées. ReSharper appliquera la dénomination et le style lors de la frappe. Terminé. Fin du débat. Il ne restait plus rien à discuter. Continuons.Cela dit, une lecture du code complet complet les aidera à comprendre la raison d'être des normes de codage et offrira de nombreux conseils utiles pour transmettre efficacement le sens à travers le code - quelque chose qu'un document de normes ou un programme d'inspection ne peut pas faire.
Si vous souhaitez améliorer ce que le resharper peut faire pour vous, ajoutez StyleCop avec le plug-in StyleCop for ReSharper. Comme mentionné, il y aura quelques conflits mineurs entre les directives MS et les valeurs par défaut de ReSharper. Je voudrais juste aller avec ReSharper sur ceux-ci. Mais quel que soit le côté que vous prenez, enregistrez simplement les résultats dans le fichier de configuration ReSharper, partagez-le avec votre équipe et terminez.
(Non, je ne suis pas un shill payé pour ReSharper, juste un client heureux. En plus de ses nombreuses autres fonctionnalités, il gère les problèmes de style de base plus rentable que tout document standard ou système de révision de code - laissant le cerveau pour les choses qui comptent .)
la source