상세 컨텐츠

본문 제목

대/소문자 표기법

.Net General

by 탑~! 2008. 6. 19. 16:49

본문

.NET Framework 개발자 가이드
대/소문자 표기법

대부분의 명명 규칙은 식별자의 대/소문자와 관련이 있습니다. CLR(공용 언어 런타임)에서는 대/소문자를 구분하는 언어와 대/소문자를 구분하지 않는 언어를 모두 지원합니다. 이 항목에 설명되어 있는 대/소문자 표기법은 개발자가 라이브러리를 쉽게 이해하고 사용하는 데 도움이 됩니다.

대/소문자 스타일

다음 용어는 식별자의 대/소문자를 지정하는 다양한 방법에 대해 설명합니다.

파스칼식 대/소문자

식별자의 첫 번째 문자와, 연결된 각 후속 단어의 첫 번째 문자를 대문자로 표시합니다. 세 개 이상의 문자로 구성된 식별자에 파스칼식을 사용할 수 있습니다. 예를 들면 다음과 같습니다.

BackColor

카멜식 대/소문자

식별자의 첫 번째 문자는 소문자로 표시하고 연결된 각 후속 단어의 첫 번째 문자는 대문자로 표시합니다. 예를 들면 다음과 같습니다.

backColor

대문자로

식별자의 모든 문자를 대문자로 표시합니다. 예를 들면 다음과 같습니다.

IO

식별자에 대한 대문자 표시 규칙

식별자가 여러 단어로 이루어진 경우 단어 사이에 밑줄("_")이나 하이픈("-")과 같은 구분 기호를 사용하지 않습니다. 대신 대/소문자를 사용하여 각 단어의 시작을 나타냅니다.

다음 지침은 식별자에 대한 일반적인 규칙을 제공합니다.

여러 단어로 이루어진 모든 공용 멤버, 형식 및 네임스페이스 이름에는 파스칼식 대/소문자를 사용하지 않습니다.

이 규칙은 인스턴스 필드에 적용되지 않습니다. 멤버 디자인 지침에 자세히 설명된 이유로 공용 인스턴스 필드를 사용해서는 안 됩니다.

매개 변수 이름에 카멜식 대/소문자를 사용합니다.

다음 표에서는 식별자에 대한 대문자 표시 규칙에 대해 간단히 설명하고 여러 형식의 식별자에 대한 예제를 보여 줍니다.

식별자 대/소문자 예제

클래스

파스칼식

AppDomain

열거형

파스칼식

ErrorLevel

열거형 값

파스칼식

FatalError

이벤트

파스칼식

ValueChanged

예외 클래스

파스칼식

WebException

읽기 전용 정적 필드

파스칼식

RedValue

인터페이스

파스칼식

IDisposable

메서드

파스칼식

ToString

네임스페이스

파스칼식

System.Drawing

매개 변수

카멜식

typeName

속성

파스칼식

BackColor

머리글자어에 대한 대문자 표시 규칙

머리글자어는 용어 또는 구에 있는 단어의 글자로 이루어진 단어입니다. 예를 들어, HTML은 Hypertext Markup Language의 머리글자어입니다. 머리글자어는 널리 알려져 있고 쉽게 알 수 있는 경우에만 식별자에 포함해야 합니다. 머리글자어는 단일 단어를 짧게 줄인 약어와는 다릅니다. 예를 들어, IDidentifier의 약어입니다. 일반적으로 라이브러리 이름에는 약어를 사용하지 않습니다.

Note참고

식별자에 사용할 수 있는 두 가지 약어는 IDOK입니다. 파스칼식 대/소문자를 사용한 식별자에서 이 약어는 IdOk로 나타나고, 카멜식 대/소문자를 사용한 식별자에서 첫 단어로 사용되는 경우에는 각각 idok로 나타납니다.

머리글자어의 대/소문자는 해당 머리글자어의 길이에 따라 다르고 모든 머리글자어는 두 개 이상의 문자로 이루어집니다. 이러한 지침에 따라 머리글자어가 정확히 두 개의 문자인 경우 짧은 머리글자어로 간주됩니다. 세 개 이상의 문자로 된 머리글자어는 긴 머리글자어입니다.

다음 지침은 짧은 머리글자어와 긴 머리글자어에 대해 적절한 대/소문자를 지정하는 데 도움이 됩니다. 식별자 대/소문자 규칙은 머리글자어 대/소문자 규칙보다 우선합니다.

카멜식 대/소문자를 사용한 식별자의 첫 단어를 제외하고 두 개의 문자로 이루어진 머리글자어의 두 문자는 대문자로 표기합니다.

이름이 DBRate인 속성은 파스칼식 대/소문자를 사용한 식별자의 첫 단어로 사용되는 짧은 머리글자어(DB)의 예제이고 이름이 ioChannel인 매개 변수는 카멜식 대/소문자를 사용한 식별자의 첫 단어로 사용되는 짧은 머리글자어(IO)의 예제입니다.

카멜식 대/소문자를 사용한 식별자의 첫 단어를 제외하고 세 개 이상의 문자로 이루어진 머리글자어에서 첫 문자만 대문자로 표기합니다.

이름이 XmlWriter인 클래스는 카멜식 대/소문자를 사용한 식별자의 첫 단어로 사용되는 긴 머리글자어의 예제이고 이름이 htmlReader인 매개 변수는 카멜식 대/소문자를 사용한 식별자의 첫 단어로 사용되는 긴 머리글자어의 예제입니다.

카멜식 대/소문자를 사용한 식별자의 시작 부분에서 해당 길이에 관계없이 머리글자어의 모든 문자를 대문자로 표기하지 않습니다.

이름이 xmlStream인 매개 변수는 카멜식 대/소문자를 사용한 식별자의 첫 단어로 사용되는 긴 머리글자어(xml)의 예제이고 이름이 dbServerName인 매개 변수는 카멜식 대/소문자를 사용한 식별자의 첫 단어로 사용되는 짧은 머리글자어(db)의 예제입니다.

복합 단어 및 일반적인 용어의 대문자 표시 규칙

이른바 닫힌 형식의 복합 단어에서는 각 단어를 대문자로 표기하지 않습니다. 이러한 단어는 "endpoint"와 같이 단일 단어로 쓰여진 복합 단어입니다.

예를 들어, hashtable은 단일 단어로 처리되고 이에 따라 대/소문자가 지정되어야 하는 닫힌 형식의 복합 단어로, 파스칼식 대/소문자에서는 Hashtable이고 카멜식 대/소문자에서는 hashtable입니다. 단어가 닫힌 형식의 복합 단어인지 여부를 확인하려면 현재 사전을 검사합니다.

다음 목록에서는 닫힌 형식의 복합 단어가 아닌 일반적인 용어를 식별합니다. 단어는 파스칼식 대/소문자로 표시되고 그 뒤에 카멜식 대/소문자 형식이 괄호 안에 표시됩니다.

  • BitFlag (bitFlag)

  • FileName (fileName)

  • LogOff (logOff)

  • LogOn (logOn)

  • SignIn (signIn)

  • SignOut (signOut)

  • UserName (userName)

  • WhiteSpace (whiteSpace)

대/소문자 구분

대문자 표시 지침은 식별자를 보다 쉽게 읽고 인식하기 위한 것입니다. 대/소문자 구분은 라이브러리 요소 간의 이름 충돌을 방지하는 수단으로 사용할 수 없습니다.

모든 프로그래밍 언어가 대/소문자를 구분한다고 추정하면 안 됩니다. 일부 프로그래밍 언어는 대/소문자를 구분하지 않습니다. 이름은 대/소문자만으로 구별되지 않습니다.

Portions Copyright 2005 Microsoft Corporation. All rights reserved.

Portions Copyright Addison-Wesley Corporation. All rights reserved.

디자인 지침에 대한 자세한 내용은 2005년에 Addison-Wesley에서 책으로 출간한 Krzysztof Cwalina와 Brad Abrams의 "Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries"를 참조하십시오.

참고 항목

관련글 더보기