다음을 통해 공유


대/소문자 표기법

참고 항목

이 콘텐츠는 Pearson Education, Inc.의 허가를 받아 프레임워크 디자인 지침: 재사용 가능한 .NET 라이브러리에 대한 규칙, 관용어 및 패턴, 2판에서 재인쇄되었습니다. 이 버전은 2008년에 출판되었으며 이후 3판에서 완전히 개정되었습니다. 이 페이지의 정보 중 일부는 최신 정보가 아닐 수 있습니다.

이 장의 지침은 일관되게 적용하면 유형, 멤버 및 매개 변수가 더 읽기 쉬워지는 대/소문자 관련 간단한 메서드를 설명합니다.

식별자용 대/소문자 규칙

식별자 내의 단어를 구분할 수 있도록 식별자 각 단어의 첫 글자를 대문자로 바꾸세요. 밑줄을 사용하여 단어를 구분하거나 식별자에서 밑줄을 사용하지 마세요. 식별자는 용도에 따라 두 가지 방법으로 대문자를 적용할 수 있습니다.

  • PascalCasing(파스칼 표기법)

  • camelCasing(카멜 표시법)

매개 변수 이름을 제외한 모든 식별자에 사용하는 PascalCasing 규칙은 아래 예제에서처럼 각 단어(2글자를 초과하는 머리글자어 포함)의 첫 번째 글자를 대문자로 표시합니다.

PropertyDescriptor HtmlTag

아래 식별자처럼 두 글자 머리글자어를 모두 대문자로 표시하는 경우도 있습니다.

IOStream

매개 변수 이름에만 사용하는 camelCasing 규칙은 아래 예제에서처럼 첫 단어를 제외한 각 단어의 첫 번째 글자를 대문자로 표시합니다. 또한 예제에서 알 수 있듯이 카멜 표기법을 적용한 식별자로 시작하는 두 글자 머리글자어는 모두 소문자로 표시합니다.

propertyDescriptor ioStream htmlTag

✔️ 모든 공개 멤버, 형식 및 여러 단어로 구성된 네임스페이스 이름에는 PascalCasing을 사용하세요.

✔️ 매개 변수 이름에는 camelCasing을 사용하세요.

아래 표에는 다양한 유형의 식별자에 대한 대/소문자 규칙이 나와 있습니다.

식별자 대/소문자 구분 예시
네임스페이스 Pascal namespace System.Security { ... }
Type Pascal public class StreamReader { ... }
인터페이스 Pascal public interface IEnumerable { ... }
메서드 Pascal public class Object {
public virtual string ToString();
}
속성 Pascal public class String {
public int Length { get; }
}
이벤트 Pascal public class Process {
public event EventHandler Exited;
}
필드 Pascal public class MessageQueue {
public static readonly TimeSpan
InfiniteTimeout;
}
public struct UInt32 {
public const Min = 0;
}
열거형 값 Pascal public enum FileMode {
Append,
...
}
매개 변수 낙타 public class Convert {
public static int ToInt32(string value);
}

복합어와 일반 용어 대/소문자 표기

대부분의 복합어는 대/소문자 표기 시 단일 단어로 취급됩니다.

❌ 닫힌 형식의 복합어는 각 단어를 대문자로 표기하지 마세요.

이러한 복합어는 엔드포인트 같은 단일 단어로 작성됩니다. 대/소문자 표기 지침에서는 닫힌 형식의 복합어를 단일 단어로 취급합니다. 복합어가 닫힌 형식으로 작성되었는지 확인하려면 최신 사전을 사용하세요.

Pascal 낙타 Not
BitFlag bitFlag Bitflag
Callback callback CallBack
Canceled canceled Cancelled
DoNot doNot Don't
Email email EMail
Endpoint endpoint EndPoint
FileName fileName Filename
Gridline gridline GridLine
Hashtable hashtable HashTable
Id id ID
Indexes indexes Indices
LogOff logOff LogOut
LogOn logOn LogIn
Metadata metadata MetaData, metaData
Multipanel multipanel MultiPanel
Multiview multiview MultiView
Namespace namespace NameSpace
Ok ok OK
Pi pi PI
Placeholder placeholder PlaceHolder
SignIn signIn SignOn
SignOut signOut SignOff
UserName userName Username
WhiteSpace whiteSpace Whitespace
Writable writable Writeable

대/소문자 구분

CLR에서 실행할 수 있는 언어는 대/소문자 구분을 지원할 필요가 없지만 일부 언어는 이를 지원합니다. 언어에서 대/소문자 구분을 지원하더라도 프레임워크에 액세스할 수 있는 다른 언어가 이를 지원하지 않을 수 있습니다. 따라서 외부에서 액세스할 수 있는 모든 API는 같은 컨텍스트에 있는 두 단어를 구분하기 위해 대/소문자에만 의존해서는 안 됩니다.

❌ 모든 프로그래밍 언어가 대/소문자를 구분한다고 가정하지 마세요. 그러나 동일하지 않습니다. 대/소문자만 다른 이름을 지정서는 안 됩니다.

Portions © 2005, 2009 Microsoft Corporation. All rights reserved.

Pearson Education, Inc의 동의로 재인쇄. 출처: Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries, 2nd Edition 작성자: Krzysztof Cwalina 및 Brad Abrams, 출판 정보: Oct 22, 2008 by Addison-Wesley Professional as part of the Microsoft Windows Development Series.

참고 항목