1. 클래스명은 반드시 대문자

- MyClass (o), myclass(x), myClass(x)

 

 

2. 패키지를 표현하는 이름은 모두 소문자

- com.daybyday (o)

- 반드시 도메인 이름으로 소문자를 사용해야 함

- 충돌 방지를 위해 패키지명은 보통 도메인 역순으로 함

  (도메인이 www.myhouse.com 이면 패키지명은 com.myhouse)

 

 

3. 변수 이름은 반드시 소문자로 시작하고 카멜(낙타)명명법 이용

- 카멜 (낙타)처럼 중간에 혹이 볼록(凸)하게, 두 단어 연결시 중간 단어 앞글자만 대문자 작성

            (Account account (o))                                    (evenHandler(o))

 

 

4. 일반적인 변수의 이름은 타입의 이름과 동일하게 지정

- public void setTopic(Topic topic) => (o)

- 코드의 복잡도를 줄여줌

- 변수 이름만으로 타입을 손쉽게 유추 가능하게 해줌

 

 

5. 넓은 범위에 영향을 미치는 변수 : 긴 이름 / 좁은 범위 변수 : 짧은 이름

- 임시 저장 공간이나 인덱스로 사용되는 변수 : 짧은 이름

 

 

6. 메소드 이름은 반드시 소문자로 시작, 카멜 (낙타) 명명법 이용

- getName (o), computeTotalWidth (o)

- 메소드와 변수 구분을 위해 변수는 명사 단어, 메소드는 동사 단어

 

 

7. 타입을 표현하는 이름은 대소문자를 혼용할 수 있지만, 반드시 명사를 사용하고 시작 글자를 대문자로 지정

- Account (o), EvenHandler (o)

 

 

8. 상수를 표현하는 (final) 이름은 반드시 모두 대문자로 지정하되, '_'를 사용하여 단어 구분

- MAX_ITERATORS (o), COLOR_RED (o)

- 자바의 일반적 관습

- 하지만 대다수는 상수 변수를 메소드로 구현하는게 더 나음

   (  public int getMaxIterations() {

return 25;

} (o)

      보다 읽기 편하고 클래스 값을 참조하는 일관된 인터페이스를 제공

 

 

9. 축약형과 두문자어형을 이름에 사용할 경우 전부 대문자로 지정하지 않음

- exportHtmlSource(); (o), openDudPlayer(); (o)

- 모두 대문자로 지칭시 상수에 대한 명명 지침과 충돌 간으성 있음

- 가독성 저하

 

 

10. private 접근 제한자를 갖는 클래스 변수에 '_' 접미사 사용

- class well {

private int depth_;

  } (o)

- 로컬 변수와 private 접근 제한자가 갖는 클래스 변수를 쉽게 구별 가능

- 부가적으로 setter 메소드에서의 이름 충돌 문제를 해결해줌

 

* 자바 예약어 : 기능이 이미 정해져 있는 키워드들 

'BackEnd > Java' 카테고리의 다른 글

JAVA :: JRE 오류  (0) 2016.01.15
Maven :: 정의  (0) 2016.01.15
Java 컴파일 & jar 만들기 & Java 실행  (0) 2016.01.15
Java :: log4sql 과 log4jdbc  (0) 2016.01.14
CRUD 구조  (0) 2016.01.13

+ Recent posts