Verwenden Sie Singular oder Plural für Aufzählungen? Ich denke, dass es mit dem Plural in der Erklärung am besten Sinn macht
enum Weekdays
{
Monday,
Tuesday,
Wednesday,
Thursday,
Friday,
Saturday,
Sunday
}
... aber ich denke, es macht mit Singular mehr Sinn, wenn man den Typ verwendet, z
Weekday firstDayOfWeek = Weekday.Monday;
Ich habe irgendwo eine Empfehlung gelesen, Singular mit regulären Aufzählungen und Plural mit Flaggen zu verwenden, aber ich würde gerne weitere Vor- und Nachteile hören.
coding-style
enumeration
Jan Aagaard
quelle
quelle
Antworten:
Hier ist es direkt von Microsoft:
http://msdn.microsoft.com/en-us/library/4x252001(VS.71).aspx
quelle
Eine Empfehlung stammt aus den .NET Framework-Entwurfsrichtlinien , Seite 59-60:
quelle
In .NET Framework, die meisten „normalen“ Aufzählungen (zB
DayOfWeek
) haben singuläre Namen und Flagge Aufzählungen (zBStringSplitOptions
,BindingFlags
) haben mehrere Namen. Dies ist sinnvoll, da ein Wert einer Flaggenaufzählung mehrere Elemente darstellen kann, bei einer Nichtflaggenaufzählung jedoch nur ein einzelnes Element.quelle
Ja. Wenn Sie die mentale Erfahrung machen, die Aufzählungen als Klassen zu implementieren, sollte die Tatsache, dass Sie einen singulären Namen für den Typ verwenden würden, zeigen, dass es sinnvoll ist, singuläre Namen für solche Aufzählungen zu verwenden. Z.B,
...
Für wen, der Pluralformen in Aufzählungen bevorzugt, würden Sie das nennen
struct Weekdays
?quelle
Im Allgemeinen betrachte ich eine Aufzählungsdefinition als Typdefinition, wobei die Werte der Aufzählung die verschiedenen Werte sind, die der Typ haben kann. deshalb bekommt es einen singulären Namen:
quelle
Microsoft empfiehlt die Verwendung eines singulären Namens für Aufzählungen, sofern das
Flags
Attribut nicht verwendet wird. Und wie aus dem Framework Design Guidelines-Buch entnommen, sollten Sie Aufzählungstypnamen nicht mit Enum, Flags usw. versehen und Aufzählungswerten keine Abkürzung oder Akronym voranstellen, wie dies früher bei VB-Aufzählungen üblich war.quelle
Es ist subjektiv und spielt keine Rolle, was Sie verwenden, solange Sie konsistent sind (ich persönlich verwende Singular als Übertragung meiner SQL-Konventionen).
quelle
Wie bei der C # / Microsoft-Konvention sollten Enums in Java singulär sein: http://docs.oracle.com/javase/tutorial/java/javaOO/enum.html
quelle