본문으로 건너뛰기

자바 네이밍 컨벤션

이미 익숙한 것들이 대부분이지만 몇개는 덜 익숙한것도 있으므로 일단 기록

공통

  1. 대소문자가 구분되며 길이에 제한이 없다.
  2. 예약어를 사용해서는 안 된다.
  3. 숫자로 시작해서는 안 된다.
  4. 특수문자는 '_' 혹은 '$'만 허용한다.
  5. 파스칼 표기법(PascalCase)과 카멜 표기법(camelCase)을 사용한다.
  6. 반의어는 반드시 대응하는 개념으로 사용해야 한다.

프로젝트

  • 대/소문자 구분없이 시작 가능하다.
  • 대문자 사용을 권장한다.

패키지

  • 패키지명은 대소문자를 모두 허용 하지만 클래스명과 쉽게 구분하기 위해서 소문자로 하는 것을 원칙 으로 하고 있다.
  • 표준 패턴을 따른다. Ex) [com].[Company].[Project].[toppackage].[lowerpackage]
  • 가급적 한 단어 사용을 권장한다.
  • 좋은 예: com.nexon.maplestory.member.object
  • 나쁜 예: com.nexon.maplestoryMemberObject

클래스

  • 파스칼 표기법을 사용한다.
  • 명사로 시작한다.
  • Ex) HelloWorld, TestWorld, ByeClass

interface(인터페이스)

  • 특별한 접두사나 접미사를 사용하지 않고 파스칼 표기법을 사용한다.
  • 형용사를 사용한다.
  • Ex) Runnable, Remote 등

Methods(메서드)

  • 카멜 표기법을 사용한다.

  • 동사로 시작한다.

  • 속성에 접근하는 메서드 명의 접두사는 'get','set'을 사용한다.

    • (ex. public void setDisplayName)
    • (ex. public void getDisplayName)
  • 데이터를 조회하는 메소드명의 접두사는 find를 사용한다.

    • (ex. public void findData(String data))
  • 데이터를 입력하는 메소드명의 접두사는 input을 사용한다.

    • (ex. public void inputData(HashMap data))
  • 데이터를 변경하는 메소드명의 접두사는 modify를 사용한다.

    • (ex. public void modifyData(HashMap data))
  • 데이터를 삭제하는 메소드명의 접두사는 delete를 사용한다.

    • (ex. public void deleteData(String data))
  • 데이터를 초기화하는 메서드 명의 접두사는 initialize을 사용한다.

    • (ex. public void initData(String data))
  • 반환 값의 타입이 boolean인 메서드는 접두사로 is를 사용한다.

    • (ex. public void isData(String Data))
  • 데이터를 불러오는 메서드 명의 접두사는 load를 사용한다.

    • (ex. public void loadData())
  • 데이터가 있는지 확인하는 메소드명의 접두사는 has를 사용한다.

    • (ex. public void hasData())
  • 새로운 객체를 만든 뒤 해당 객체를 리턴해주는 메서드 명의 접두사는 create를 사용한다.

  • (ex. public void createAccount())

  • 해당 객체를 다른 형태의 객체로 변환해주는 메서드 명의 접두사는 to를 사용한다.

  • (ex. public void toString())

  • 해당 객체가 복수인지 단일인지 구분하는 메서드 명의 접미사는 s를 사용한다.

  • (ex. public void getMembers())

  • B를 기준으로 A를 하겠다는 메소드명의 전치사는 By를 사용한다.

  • (ex. public void getUserByName(String name))

Variable(변수)

  • 소문자로 시작한다.
  • 카멜 표기법을 사용한다.
    • ex) firstName , lastName , birthday 등

Constant(상수)

  • 전부 대문자로 표기한다.
  • 스네이크케이스를 사용하여 '_'로 구분한다.
    • ex) MAX_PRIORITY , LIFESPAN 등

반의어

반의어설명
get / set얻다 / 셋팅하다
add / remove추가 / 제거
create / destory창조 / 파괴
start / stop가동 / 정지
insert / delete삽입 / 삭제
increment / decrement증가 / 감소
old / new구 / 신
begin / end시작 / 끝
first / last처음 / 마지막
up / down위 / 아래
min / max최소 / 최대
next / previous다음 / 이전
open / close열다 / 닫다
show / hide보이다 / 숨기다
suspend / resume일시정지 / 재개하다
parent / child부모 / 자식