Allgemeine Benennungskonventionen
In den allgemeinen Benennungskonventionen wird erläutert, wie Sie optimale Namen für die Elemente in Bibliotheken auswählen. Diese Richtlinien gelten für alle Bezeichner. In späteren Abschnitten wird die Benennung spezieller Elemente, z. B. Namespaces oder Eigenschaften, erläutert.
Auswahl der Wörter
Wählen Sie leicht lesbare Bezeichnernamen aus. Beispielsweise ist eine Eigenschaft mit dem Namen HorizontalAlignment im Englischen besser lesbar als AlignmentHorizontal.
Ziehen Sie Lesbarkeit einer kurzen Bezeichnung vor. Der Eigenschaftenname CanScrollHorizontally ist besser als ScrollableX (ein unklarer Verweis auf die X-Achse).
Verwenden Sie keine Unterstriche, Bindestriche oder andere nicht alphanumerischen Zeichen.
Verwenden Sie nicht die ungarische Notation.
In der ungarischen Notation enthalten Bezeichner ein Präfix, um Metadaten über den Parameter, z. B. den Datentyp des Bezeichners, zu codieren.
Verwenden Sie keine Bezeichner, die Konflikte mit Schlüsselwörtern weit verbreiteter Programmiersprachen verursachen.
CLS-kompatible Sprachen müssen zwar eine Möglichkeit bereitstellen, Schlüsselwörter als normale Wörter zu verwenden. Gemäß den empfohlenen Vorgehensweisen sollten Sie jedoch Entwickler nicht zwingen, das hierfür erforderliche Verfahren zu kennen. In den meisten Programmiersprachen enthält die Dokumentation zur Sprachreferenz eine Liste der von der Sprache verwendeten Schlüsselwörter. Die folgende Tabelle enthält Links zur Referenzdokumentation einiger weit verbreiteter Programmiersprachen.
Sprache |
Link |
---|---|
C# |
|
C++ |
|
Visual Basic |
Abkürzungen und Akronyme
Im Allgemeinen sollten Sie keine Abkürzungen oder Akronyme verwenden. Durch diese wird die Lesbarkeit von Namen verringert. Außerdem ist es schwierig zu wissen, wann davon ausgegangen werden kann, dass ein Akronym allgemein bekannt ist.
Die Regeln zur Groß-/Kleinschreibung von Abkürzungen finden Sie unter Konventionen für die Groß-/Kleinschreibung.
Verwenden Sie keine Abkürzungen oder Zusammenziehungen als Bestandteile von Bezeichnernamen.
Verwenden Sie beispielsweise OnButtonClick und nicht OnBtnClick.
Verwenden Sie Akronyme ohne allgemeine Gültigkeit nur, wenn dies unbedingt erforderlich ist.
Sprachspezifische Namen
Verwenden Sie als Typnamen semantisch interessante Namen statt sprachspezifischer Schlüsselwörter. Beispielsweise ist GetLength ein besserer Name als GetInt.
Verwenden Sie in den seltenen Fällen, in denen ein Bezeichner über keine semantische Bedeutung außer seinem Typ verfügt, einen generischen Typnamen der Common Language Runtime (CLR) und keinen sprachspezifischen Namen.
Beispielsweise sollte eine Methode, die Daten in Int16 konvertiert, mit ToInt16 und nicht mit ToShort benannt werden, weil Short der sprachspezifische Typname für Int16 ist.
Die folgende Tabelle enthält die sprachspezifischen Typnamen für weit verbreitete Programmiersprachen und den entsprechenden CLR-Namen.
C#-Typname |
Visual Basic-Typname |
JScript-Typname |
Visual C++-Typname |
Ilasm.exe-Darstellung |
CLR-Typname |
---|---|---|---|---|---|
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 |
Ganze Zahl |
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 |
Objekt |
Objekt |
Objekt |
Objekt |
Objekt |
Objekt |
Verwenden Sie in den seltenen Fällen, in denen der Bezeichner keine semantische Bedeutung hat und der Typ des Parameters irrelevant ist, einen allgemeinen Namen, z. B. value oder item, statt den Typnamen zu wiederholen.
Copyright für einzelne Teile 2005 Microsoft Corporation. Alle Rechte vorbehalten.
Copyright für einzelne Teile Addison-Wesley Corporation. Alle Rechte vorbehalten.
Weitere Informationen zu Entwurfsrichtlinien finden Sie unter „Framework-Entwurfs-Richtlinien: Idiome, Konventionen und Muster für wiederverwendbare .NET-Bibliotheken von Krzysztof Cwalina“ book und Brad Abrams, veröffentlicht von Addison-Wesley, 2005.