2010-06-21 3 views
5

UI가 유휴 상태 일 수있는 시간을 나타내는 변수가 있습니다. 나는이 변수를 UITimer이라고 부르기로했다. 변수를 내 클래스 생성자로 전달한 다음 로컬 필드에 저장하고 싶습니다.매개 변수를 시작하는 머리 글자 어 대문자 사용

이 케이스를 수행하는 적절한 방법은 무엇입니까? 대문자로 쓰지 않는 매개 변수의 공통된 규칙을 사용합니다. 이렇게해야합니까?

uITimer 

또는이 부분이 무엇입니까?

uiTimer 

또한 필드에 대한 첫 번째 문자는 밑줄과 소문자로 표시됩니다.

private int _uITimer 

또는이

private int _uiTimer? 

처럼 나는 _uiTimer이 (다른 옵션은 절름발이 보인다)하지만 난 있는지 관심이 갈 수있는 방법이라고 생각 :

는이 같은 선언해야 나는 뭔가를 놓치고있다.

우수 답변은 약어는 모두 (그것 같이 또는 무언가) C#을 명명

답변

12

마이크로 소프트의 프레임 워크 디자인 가이드 라인 같은 경우를 유지해야한다고라는 문서에 대한 링크 될있는이 주제에 대해 말하기를 다음 :


3.1.2 머리 글자

DO 낙타 사례 식별자의 첫 단어를 제외하고 두 자리 약어의 두 문자를 모두 대문자로 표기하십시오.

System.IO 
public void StartIO(Stream ioStream) 

낙타 맡았다 식별자의 첫 번째 단어를 제외하고, 세 개 이상의 문자 글자의 첫 번째 글자를 대문자 않는다.

System.Xml 
public void ProcessHtmlTag(string htmlTag) 

는 낙타 맡았다 식별자의 시작 부분에, 어떤 약어의 문자의, 무엇이든 자신의 길이를 투자하지 마십시오.


당신은 기본적으로 세 가지 규칙의 마지막에 대해 질문했습니다.

저는 개인적으로 uiTimer을 선택할 것입니다. 간단히 말해서 uITimer은보기 어려워 보입니다.

+0

이 규칙을 약어 B2B 또는 A2Z에 적용 하시겠습니까? 두 번째 규칙은이 경우에 적용해야하지만 B2b 또는 A2z는 매우 이상하게 보입니다 – Andronicus

+0

_ @ Andronicus_, 위의 가이드 라인에 대한 예외가 발생하는 경우가 있다고 생각합니다.만약 다른 것이 나오지 않는다면'B2B'라고 쓸 것이고, 다른 것이 있으면'B2b'라고 쓸 것입니다. 'B2bFoo' (단어 경계를 쉽게 알아볼 수 있도록하기 위해). 그러나 나는 확실하지 않다. - Microsoft가 자본화 방법을 잘 모르는 또 다른 좋은 사례는 'ID'대 'Id'입니다. – stakx

관련 문제