Conventions de mise en majuscules

Remarque

Ce contenu est réimprimé avec l’autorisation de Pearson Education, Inc. à partir des Instructions de conception d’une infrastructure : conventions, idiomes et modèles des bibliothèques réutilisables .NET, 2ème édition. Cette édition a été publiée en 2008, et le livre a été entièrement révisé dans la troisième édition. Certaines informations de cette page peuvent être obsolètes.

Les recommandations de ce chapitre exposent une méthode simple de cas qui d’utilisation, lorsqu’ils sont appliqués de manière cohérente, rendent les identificateurs pour les types, les membres et les paramètres faciles à lire.

Règles de mise en majuscules pour les identificateurs

Pour différencier les mots d’un identificateur, mettez en majuscule la première lettre de chaque mot de l’identificateur. N’utilisez pas de traits de soulignement pour différencier les mots, ou d’ailleurs, n’importe où dans les identificateurs. Il existe deux façons appropriées de capitaliser les identificateurs, en fonction de l’utilisation de l’identificateur :

  • CassePascal

  • casseMixte

La convention CassePascal, utilisée pour tous les identificateurs à l’exception des noms de paramètres, capitalise le premier caractère de chaque mot (y compris les acronymes sur deux lettres), comme illustré dans les exemples suivants :

PropertyDescriptor HtmlTag

Une exception existe pour les acronymes à deux lettres dans lesquels les deux lettres sont majuscules, comme indiqué dans l’identificateur suivant :

IOStream

La convention casseMixte, utilisée uniquement pour les noms de paramètres, capitalise le premier caractère de chaque mot, à l’exception du premier mot, comme illustré dans les exemples suivants. Comme le montre également l’exemple, les acronymes à deux lettres qui commencent un identificateur à casse mixte sont tous deux en minuscules.

propertyDescriptor ioStream htmlTag

✔️ UTILISEZ la CassePascal pour tous les noms de membres, de types et d’espaces de noms publics composés de plusieurs mots.

✔️ UTILISEZ la casseMixte pour les noms de paramètres.

Le tableau suivant décrit les règles de mise en majuscules pour différents types d’identificateurs.

Identificateur Casse Exemple
Espace de noms Pascal namespace System.Security { ... }
Type Pascal public class StreamReader { ... }
Interface Pascal public interface IEnumerable { ... }
Méthode Pascal public class Object {
public virtual string ToString();
}
Propriété Pascal public class String {
public int Length { get; }
}
Événement Pascal public class Process {
public event EventHandler Exited;
}
Champ Pascal public class MessageQueue {
public static readonly TimeSpan
InfiniteTimeout;
}
public struct UInt32 {
public const Min = 0;
}
Valeur enum Pascal public enum FileMode {
Append,
...
}
Paramètre mixte public class Convert {
public static int ToInt32(string value);
}

Mise en majuscules des mots composés et des termes courants

La plupart des termes composés sont traités comme des mots uniques pour la mise en majuscules.

❌ NE capitalisez PAS chaque mot dans ce que l’on appelle les mots composés de forme fermée.

Il s’agit de mots composés écrits sous la forme d’un seul mot, comme plateforme. Pour les recommandations de casse, traitez un mot composé de forme fermée comme un seul mot. Utilisez un dictionnaire à jour pour déterminer si un mot composé est écrit sous forme fermée.

Pascal mixte Not
BitFlag bitFlag Bitflag
Callback callback CallBack
Canceled canceled Cancelled
DoNot doNot Don't
Email email EMail
Endpoint endpoint EndPoint
FileName fileName Filename
Gridline gridline GridLine
Hashtable hashtable HashTable
Id id ID
Indexes indexes Indices
LogOff logOff LogOut
LogOn logOn LogIn
Metadata metadata MetaData, metaData
Multipanel multipanel MultiPanel
Multiview multiview MultiView
Namespace namespace NameSpace
Ok ok OK
Pi pi PI
Placeholder placeholder PlaceHolder
SignIn signIn SignOn
SignOut signOut SignOff
UserName userName Username
WhiteSpace whiteSpace Whitespace
Writable writable Writeable

Respect de la casse

Les langages qui peuvent s’exécuter sur le CLR ne sont pas nécessaires pour prendre en charge le respect de la casse, même si certains le font. Même si votre langage le prend en charge, ce n’est pas forcément le cas pour les autres langages qui peuvent accéder à votre framework. Par conséquent, toutes les API accessibles en externe ne peuvent pas s’appuyer uniquement sur la casse pour faire la distinction entre deux noms dans le même contexte.

❌ NE supposez PAS que tous les langages de programmation respectent la casse. mais ils ne le sont pas. Les noms ne peuvent pas différer par la casse seulement.

Portions © 2005, 2009 Microsoft Corporation. Tous droits réservés.

Réimprimé avec l’autorisation de Pearson Education, Inc. et extrait de Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries, 2nd Edition par Krzysztof Cwalina et Brad Abrams, publié le 22 octobre 2008 par Addison-Wesley Professional dans le cadre de la série sur le développement Microsoft Windows.

Voir aussi