Conventions générales d'affectation de noms
Mise à jour : novembre 2007
Les conventions générales d'affectation de noms expliquent comment choisir les noms les plus appropriés pour les éléments de vos bibliothèques. Ces règles s'appliquent à tous les identificateurs. Les sections suivantes traitent des noms choisis pour des éléments spécifiques, tels que les espaces de noms ou les propriétés.
Choix des mots
Choisissez des noms d'identificateurs lisibles. Par exemple, une propriété nommée HorizontalAlignment est plus lisible en anglais que le nom AlignmentHorizontal.
Privilégiez la lisibilité à la concision. Le nom de propriété CanScrollHorizontally est plus adapté que ScrollableX (une référence peu évidente à l'axe des abscisses).
N'utilisez pas de traits de soulignement, de traits d'union ou tout autre caractère non alphanumérique.
N'utilisez pas la notation hongroise.
La notation hongroise consiste à inclure un préfixe dans les identificateurs pour coder certaines métadonnées relatives au paramètre, et notamment le type de données de l'identificateur.
Évitez d'utiliser des identificateurs qui entrent en conflit avec les mots clés de langages de programmation couramment utilisés.
Même si les langages conformes CLS offrent généralement la possibilité d'utiliser des mots clés comme des mots normaux, il est généralement conseillé de ne pas obliger les développeurs à savoir le faire. Pour la plupart des langages de programmation, la documentation de référence du langage contient une liste des mots clés utilisés par le langage. Le tableau suivant fournit des liens vers la documentation de référence pour quelques-uns des langages de programmation les plus courants.
Langage |
Lien |
---|---|
C# |
|
C++ |
|
Visual Basic |
Abréviations et acronymes
En général, vous ne devez pas utiliser d'abréviations ou d'acronymes. Ils rendent vos noms moins compréhensibles. Par ailleurs, il est difficile de savoir avec exactitude si un acronyme est censé être connu ou non.
Pour les règles de mise en majuscules des abréviations, consultez Règles de mise en majuscules pour les acronymes.
N'utilisez pas d'abréviations ou de contractions comme parties des noms d'identificateurs.
Par exemple, utilisez OnButtonClick au lieu de OnBtnClick.
Utilisez uniquement des acronymes très connus, et encore uniquement lorsque c'est nécessaire.
Noms spécifiques au langage
Utilisez des noms intéressants du point de vue sémantique plutôt que des mots clés spécifiques au langage comme des noms de types. Par exemple, GetLength est un nom plus approprié que GetInt.
Utilisez un nom de type générique du Common Language Runtime (CLR) au lieu d'un nom spécifique à un langage, dans les rares cas où un identificateur n'a aucune signification sémantique au-delà de son type.
Par exemple, une méthode qui convertit des données en Int16 doit être nommée ToInt16 et non ToShort dans la mesure où Short est le nom de type spécifique au langage de Int16.
Le tableau suivant répertorie les noms des types spécifiques au langage pour les langages de programmation courants et leur équivalent dans le CLR.
Nom de type C# |
Nom de type Visual Basic |
Nom de type JScript |
Nom de type Visual C++ |
Représentation Ilasm.exe |
Nom du type du CLR |
---|---|---|---|---|---|
sbyte |
SByte |
sbyte |
char |
int8 |
SByte |
byte |
Byte |
byte |
unsigned char |
unsigned int8 |
Byte |
short |
Short |
short |
short |
int16 |
Int16 |
ushort |
UInt16 |
ushort |
unsigned short |
unsigned int16 |
UInt16 |
int |
Integer |
int |
int |
int32 |
Int32 |
uint |
UInt32 |
uint |
unsigned int |
unsigned int32 |
UInt32 |
long |
Long |
long |
__int64 |
int64 |
Int64 |
ulong |
UInt64 |
ulong |
unsigned __int64 |
unsigned int64 |
UInt64 |
float |
Single |
float |
float |
float32 |
Single |
double |
Double |
double |
double |
float64 |
Double |
bool |
Boolean |
boolean |
bool |
bool |
Boolean |
char |
Char |
char |
wchar_t |
char |
Char |
string |
String |
string |
String |
string |
String |
object |
Object |
object |
Object |
object |
Object |
Utilisez un nom courant, tel que value ou item au lieu de répéter le nom du type, dans les rares cas où un identificateur n'a aucune signification sémantique et que le type du paramètre n'est pas important.
Portions Copyright 2005 Microsoft Corporation. Tous droits réservés.
Portions Copyright Addison-Wesley Corporation. Tous droits réservés.
Pour plus d'informations sur les règles de conception, consultez le livre « Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries » de Krzysztof Cwalina et Brad Abrams, publié par Addison-Wesley, 2005.
Voir aussi
Autres ressources
Instructions de conception pour le développement de bibliothèques de classes