2011-06-21 17 views
6

Podczas dzielenia klas na pliki, zastanawiam się, czym jest konwencja nazewnictwa dla plików klas zawierających tylko wyliczenia. Czy powinny pasować do nazwy wyliczeniowej, tak jak każdej innej klasy, czy też powinny mieć przyrostek "Enum", aby deweloper wiedział, że plik zawiera tylko wyliczenie?Czy nazwy plików Enum mają być poprzedzone przyrostkiem "Enum"?

Na przykład:

namespace MyCompanyName.MyApplication 
{ 
    public enum Colors 
    { 
     Red, 
     Blue, 
     Green, 
     Yellow 
    } 
} 

powiedziałbyś plik zawierający powyższy kod powinien być nazwany 'Colors.cs' lub 'ColorsEnum.cs'? Alternatywnie, być może istnieje inna akceptowana konwencja nazewnictwa dla takich plików?

+0

nr Wybrałaś najgorszy możliwy przykład, nikt nie zrozumie, dlaczego Colors.Orange jest nieprawidłowy. Nazywanie go ColorsEnum nie pomaga. Ale to wszystko zostaje rozwiązane przez IntelliSense. Możesz założyć, że jest używany. –

Odpowiedz

5

Po pierwsze, jest to całkowicie osobista preferencja osobista/zespołowa.

takiej sytuacji:

Osobiście go Colors.cs nazwać. Zachowuje to nazwę pliku odpowiadającą nazwie typu. Kiedy pracuję nad API, jeśli "Kolory" są ustalonym zbiorem rzeczy reprezentowanych przez enum, prawdopodobnie bym to wiedział i nie byłoby żadnego zamieszania.

2

Co z tworzeniem folderu o nazwie Wylicza i nazywanie pliku Colors.cs?

+0

Zgadzam się z tym. Jeśli plik zawiera tylko deklarację pojedynczego obiektu, uważam za użyteczne, aby nazwa pliku była taka sama jak obiekt. – Derrick

7

Nazwa pliku moim zdaniem powinna być taka sama jak nazwa wyliczenia, które - zgodnie z Enum Naming guidelines powinien nie mają przyrostek Enum. Również wytyczne sugerują Twój enum powinny być pojedynczej więc zarówno biorąc pod uwagę powinno być Color.cs

1

Tworzenie folderu o nazwie Wyliczenia, wyliczenia lub coś opisowe powinno wystarczyć. Ponadto można śledzić C# nazewnictwa standardów stwierdzili, że:.

„Nazwy Wyliczenia Nie używaj prefiks nazw wartości wyliczenie Na przykład, nie należy używać prefiksu takich jak reklamy dla wyliczenia ADO lub rtf dla bogatych wyliczenia tekst, i tak dalej.

oznacza to również, że nie powinien zawierać nazwę typu wyliczenie w nazwach wartość wyliczenia. Poniższy przykład kodu demonstruje nieprawidłowo nazywania wartości wyliczenie za.

kod C# następująco

public enum Teams 
{ 
    TeamsAlpha, 
    TeamsBeta, 
    TeamsDelta 
} 

Referencje: Names of Classes, Structs, and Interfaces

+0

Jestem świadomy, że nazwa typu nie powinna zawierać przedrostka ani przyrostka, ale to pytanie jest szczególnie pytające w odniesieniu do nazwy pliku. –

+0

Nie można po prostu skopiować cudzej zawartości i rozpowszechniać jej w ten sposób, co oznacza "Prawa autorskie X, wszystkie prawa zastrzeżone". Publikując na Stack Exchange, deklarujesz, że masz prawo do rozpowszechniania treści postów na licencji [CC BY-SA] (http://creativecommons.org/licenses/by-sa/3.0/). Napisz odpowiedź własnymi słowami (i ewentualnie link do strony zewnętrznej, aby uzyskać więcej informacji). – Gilles