ProgramingTip

열거를위한 단수 또는 복수?

bestdevel 2020. 10. 24. 11:21
반응형

열거를위한 단수 또는 복수?


열거에 단수 또는 복수를 사용하고 있습니까? 선언문에 복수형이 가장 적합하다고 생각합니다.

enum Weekdays
{
    Monday,
    Tuesday,
    Wednesday,
    Thursday,
    Friday,
    Saturday,
    Sunday
}

...하지만 유형을 사용할 때 단수로 더 의미가 있다고 생각합니다.

Weekday firstDayOfWeek = Weekday.Monday;

나는 단수형 whith 정규 열거 형 및 플래그와 함께 복수형을 사용하는 권장 사항을 읽었지만 더 많은 장단점을 듣고 싶습니다.


다음은 Microsoft에서 직접 제공 한 것입니다.

http://msdn.microsoft.com/en-us/library/4x252001(VS.71).aspx

대부분의 Enum 유형에는 단수 이름을 사용하지만 비트 필드 인 Enum 유형에는 복수 이름을 사용하십시오.


한 가지 권장 사항은 .NET Framework 디자인 지침 ( 59-60 페이지) 에서 제공 됩니다.

그 값은 비트 필드가없는 한, 열거에 대한 단일 유형 이름을 사용합니다.

public enum ConsoleColor {
  Black,
  Blue,
  Cyan,
  ...

값으로 비트 열거 필드에 대한 복수의 타입 이름을 사용, 열거 열거했다.

[Flags]
public enum ConsoleModifiers {
  Alt,
  Control,
  Shift
}

.NET Framework에서 대부분의 "일반"열거 형 (예 :) DayOfWeek에는 단수 이름이 있고 나열 열거 형 (예 : StringSplitOptions, BindingFlags)에는 복수 이름이 있습니다. 플래그 열거 형의 값은 여러 항목을 나열 할 수 플래그가 아닌 열거 형의 경우 단일 항목 만 수 있습니다.


일반적으로 열거 된 형의 값은 유형이 일련의 열거 된 값입니다. 따라서 단일 이름을 얻습니다.enum Weekday { SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY }; enum CoffeeSize { SMALL, MEDIUM, LARGE };

예. 형 열거를 클래스로 구현하는 정신적 경험을한다면 유형에 대해 단수 이름을 사용하는 사실은 합수 이름에 단수를 사용하는 것이 리 적이라는 것을 보여야합니다. 예 :

struct Weekday {};

const Weekday SUNDAY;
const Weekday MONDAY;
const Weekday TUESDAY;

...

void func (Weekday *day)
{
   if (day == &SUNDAY)
       ...
}

열거 형에서 복수형을 선호하는 사람을 위해 이름을 지정 struct Weekdays하시겠습니까?


마이크로 소프트 특성을 사용하지 않는 한 열거-type에 one-이름을 사용하는 것이 좋습니다Flags. 그리고 프레임 워크 디자인 가이드 라인 책에서 일련의 것처럼 열거 형 이름에 Enum, Flags 등을 접두사로 붙이면 안, 예전의 VB 열거 형에서 나열 볼 수 있고 약어 나 두문자어를 열거 형 값에 접두사로 나 열면합니다.


일반적으로 열거 된 형의 값은 유형이 일련의 열거 된 값입니다. 따라서 단일 이름을 얻습니다.

enum Weekday { SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY };

enum CoffeeSize { SMALL, MEDIUM, LARGE };

일관성이있는 한 주관은 무엇을 사용하든 상관 없습니다 (개인적으로 저는 Sql 규칙에서 이월 된 단수를 사용합니다).


C # / Microsoft 규칙과 마찬가지로 Java의 열거 형은 단수 여야합니다. http://docs.oracle.com/javase/tutorial/java/javaOO/enum.html

참고 URL : https://stackoverflow.com/questions/1335959/singular-or-plural-for-enumerations

반응형