본문 바로가기

카테고리 없음

[JAVA] 표기법 정리(파스칼/언더스코어/캐멀/헝가리언)

■■■■ 표기법 정리 ■■■■■■■

○ 파스칼 표기법(Pascal Notation : Pascal Case)
: 파스칼 표기법은 첫 글자를 대문자로 구성하며 
  단어가 합성될 때 마다 각 단어의 첫 글자를 
  대문자로 표기하는 방식방법이다.

ex) class MainTitle     class CircleTest             class UserStatus

자바에서는 클래스의 명명 규칙인 첫 글자를 대문자로 한다는 규칙에 캐멀 표기법이 합쳐진 형태이다.

○언더스코어 표기법(Underscore Notation : Underscore Case
: Underline Notation : Ubderline case : 밑줄 표기법)

주로 데이터베이스 쪽이나 자바스크립트 쪽에서 지역 변수를 사용할 경우 

언더바를 사용하는 언더스코어 표기법을 사용하기도 한다. 

그리고 자바에서는 상수화된 변수를 표현하는 과정에서 이 명명법을 사용한다.

ex) content_name             user_data              APPLE_PRICE

 

 


○ 캐멀 표기법 (Camel Notation : Camel Case : 낙타 표기법)
: 캐멀 표기법은 두 단어 이상의 변수명을 표현할 때 두 번재 단어부터 첫 글자를 대문자로 표기하는 방법.

ex) addData        rainColor            userName

변수의 명명규칙(Naming Rule)인 첫 글자를 소문자로 한다는 규칙과 

캐멀 표기법이 합쳐져서 네이밍이 이루어진다.
캐멀 표기법은 자바에서 시작된 것으로 변수명 혹은 클래스명을 작성할 때 
단어마다 단어의 첫 글자를 대문자로 표기하는 것이다.
이 표기법은 각 단어의 첫 글자가 대문자로 표기되어 

꼭 낙타의 등처럼 보여 캐멀 표기법으로 불리게 되었다고 알고 있는 사람들이 많지만, 이는 사실과는 다르다. 
→ 처음 내용을 다루게 된 해외 원서의 표지가 낙타~~!

- 클래스 이름
: 맨 앞 글자를 대문자로 한다.
: 두 번째로 오는 의미있는 단어의 앞 글자로 대문자를 쓴다.
ex) public class MyClass{----}         //--(O)
     public class Myclass{----}         //--(X)
 
- 변수 이름
: 맨 앞 글자를 소문자로 한다.
: 두 번째로 오는 의미있는 단어의 앞 글자는 대문자이다.

  EX) String myName;
       String MyName; ( X)

- 메소드 이름
: 맨 앞 글자를 소문자로 한다.
: 두 번째로 오는 의미있는 단어의 앞 글자는 대문자이다.
  (변수 이름의 명명법과 동일한 방법)
  단, 메소드의 이름은 가급적 동사로 시작할 수 있도록 명명하는 것이 좋다.
ex) public String creatMyName() {----}
     public String creatmyname() {----}(X)
     public String MyName() {-----}(X) 동사가 아닌 명사임으로 추천하지 않음.

○ 헝가리언 표기법(Hungarian Notation : Hungarian Case)
  : 헝가리언 표기법은 Microsoft사의 Chares Simonyi 라는 프로그래머가 만들었다고 한다.
    그가 코딩할 때 습관적으로 즐겨쓰던 접두어 변수 명명 방식이 빌 게이츠의 눈에 띄어 표준화(일반화)된 것이라 한다.
    변수를 표기할 때 앞에 접두어로 쉽게 알아볼 수 있도록 표기하였는데 이를 통해 자료형을 쉽게 알아볼 수 있다.

ex) int nNum      float fNum
     argument of string → args

Data Type           Prefix             Example
--------------     ----------------    --------------------
boolean              b                    bContinue
int                     n                   nIndex
short                 n                     nNum
char                  c                    cFirstInitial
Sting                 s(str)               sCustomerName(strCustomerName)

※ 실제 자바 프로젝트에서....
클레스는 파스칼 표기법으로, 변수나 메소드의 이름은 캐멀 표기법으로 사용하며 

상수화된 변수의 이름은 언더스코어 표기법으로 사용하고 간혹오래된 프로젝트를 유지보수 하다보면 

헝가리언 표기법으로 네이밍하는 개발자들도 적지 않다.