C# Conventions de nomenclatures
Posted on January 30th, 2015
Principes généraux:
- Règle de la moindre surprise. Favorisez l'homogénéité des conventions plutôt que le purisme.
- Respectez les conventions en place, même si elles ne sont pas explicitement documentées.
- L'anglais domine largement en informatique, mais dans certains contextes la langue locale peut être exigée pour les commentaires ou même le code. Respectez ces choix.
- Microsoft offre un ensemble de règles pour le C#, mais il est très fréquent qu'un organisme ou un groupe de travail ait ses propres règles. S'il est confirmé qu'elles s'appliquent à votre code, apprenez-les et suivez-les! Et ce, même si elles sont en contradiction avec le reste de l'industrie.
- Favorisez la lisibilité avant tout.
- Les éditeurs modernes vous font gagner du temps en complétant facilement votre rédaction. Faites-en bon usage. Inutile d'être concis quand c'est au détriment de la lisibilité. Évitez-donc:
- Les abréviations ou diminutifs;
- Les acronymes qui ne sont pas d'usage très courant;
- Les préfixes inutiles en typage fort comme la notation hongroise. Cette dernière est parfois appréciée dans les langages dynamiques, mais généralement superflue en C#.
- Les éditeurs modernes vous font gagner du temps en complétant facilement votre rédaction. Faites-en bon usage. Inutile d'être concis quand c'est au détriment de la lisibilité. Évitez-donc:
- Nommez les choses en fonction de leur sens dans le contexte.
- Évitez d'utiliser de simples lettres ou des mots insignifiants.
- Portez une attention particulière aux ambiguïtés. Il existe généralement un terme plus spécifique.
- Selon le contexte, utilisez un nom, un verbe d'état ou d'action. Accordez les pluriels et les temps au besoin.
- Les attributs seront généralement des noms, des formes passives (termes d'états).
- Les listes et énumérations seront généralement au pluriel.
- Les méthodes seront généralement des verbes d'action.
- Utilisez le temps des verbes pour dénoter le présent, passé et futur.
- Les interfaces sont des adjectifs.
- Utilisez une phrase nominale au besoin pour clarifier. La modération s'impose, mais la clarté gagne.
- N'utilisez pas le même terme avec seulement la casse comme différence. Bien que le C# soit sensible à la casse, ce ne sont pas tous les langages du CLR qui le sont.
- Attention aux interférences les autre langages. En C#, la casse Pascal domine largement!
Casse | Contexte |
Pascal (PascalCasing) | Namespace
Classes
Énumérations et items d'énumérations
Interfaces (ajoutez le préfixe "I" suivi d'une lettre en majuscule)
Attributs, qu'ils soient propriétés et champs(C'est différent du Java!)
Événements |
Mixte (camelCasing) | paramètres |
Majuscule |
Voir aussi :