특히 네이밍이 코딩에서 가장 어려운 일이라는 걸 느껴본 사람이라면 다시 한번 보시길...
http://geosoft.no/development/javastyle.html
가장 중요한 말은 이 모든 규칙들은 가독성을 위해서라면 위반되어도 된다는 말.
- 필드는 ‘_’ 접미사를 사용한다.
- 변수의 길이는 영역과 비례한다.
- 객체명의 의미를 메소드명에 넣지마라. line.getLength(); // NOT: line.getLineLength
- compute, find, initialize 사용
- 컬렉션은 복수형으로
- 개수를 나타내는 변수는 ’n’ 접두사를 사용한다.
- 엔터티 번호에는 ‘i’ 접두사나 ‘No’ 접미사를 사용한다.
- 대응하는 단어를 사용한다. get/set , add/remove , create/destroy , start/stop , insert/delete , increment/decrement , old/new , begin/end , first/last , up/down , min/max , next/previous , old/new , open/close , show/hide , suspend/resume
- 함수명은 ‘처리 후 무엇을 리턴하는지’, 프로시저명은 ‘무엇을 처리하는지’를 나타낸다.
- 인터페이스 디폴트 구현은 ‘Default’ 접두사를 사용한다.
- 팩토리 메소드의 이름은 ‘new’ 접두사에 반환하는 인스턴스의 클래스명으로 한다. public Point newPoint(...)
- 메소드 선언 규칙은 <access> static abstract synchronized <unusual> final native 순서이다.
- do-while 사용 자제
- 조건이 복잡한 경우 임시 boolean으로 단순화 한다.
- 정상적인 경우를 if에 놓고 예외를 else에 둔다.
- 조건문과 한줄에 놓지 마라. 디버깅을 위해서
- 조건문 안에 실행문이 있어서는 안된다.
- 특정 의미를 갖는 숫자는 항상 의미를 나타내는 상수로 바꿔서 사용한다.
- 빈 for문은 ‘;’(세미콜론)을 새 줄에 놓는다. for(<initialization>; <condition>; <update>) ;
- 복잡한 메소드는 주석을 달지 말고 새로 만든다.(self-documenting)
- javadoc주석을 제외한 주석은 multi-line 주석이라고 해도 ‘//‘를 사용한다. /* */주석은 디버깅용으로 언제든 제거해서 사용 할 수 있게 한다.
- 컬렉션은 포함하는 유형을 주석으로 뒤에 넣는다. private Vector points_; // of Point
- 모든 public 클래스, 또 publics 클래스내의 public, protected 메소드는 javadoc을 만든다.
댓글 없음:
댓글 쓰기