Java/Basic

[Java] 명명 규칙

개발자 윤정 2021. 6. 2. 14:10

Java 명명규칙 (Java Naming) 

 

 

클래스나 패키지, 변수, 상수, 메소드 등과 같이 식별자(identifiers)의 이름을 지을 때 권장되는 규칙입니다.

 

 

명명규칙을 사용할 시의 이점

 

 

  • 표준적인 자바 명명 규칙을 사용함으로써, 다른 프로그래머들이 코드를 읽기 쉽습니다.
  • 코드가 무슨 기능을 하는지 빠르게 파악이 가능합니다.

 

 

주로 쓰는 반의어

 

 

get 주다 set 받다
add 추가 remove 제거
create 창조 destroy 파괴
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 자식

 

 

00. 공통 명명 규칙

 

  • 대소문자가 구분되며 길이에 제한이 없습니다.
  • 예약어를 사용해서는 안 됩니다. (abstract, boolean, break, catch 등)
  • 숫자로 시작해서는 안 됩니다.
  • 특수문자는 _ 와 $ 만을 허용합니다.
  • 반의어는 반드시 대응하는 개념으로 사용해야 합니다.
  • 파스칼 표기법(PascalCase)와 카멜 표기법(camelCase)를 사용합니다.
파스칼 표기법(PascalCase) 모든 단어에서 첫 번째 문자가 대문자이며 나머지는 소문자 클래스, 메소드
카멜 표기법(camelCase) 단어의 첫 번째 문자는 소문자

이름이 2가지 단어와 혼합되어 있다면, 두 번째 단어는 대문자로 시작  
변수
스네이크 표기법(snake_case) 단어를 밑줄 문자로 구분하는 표기법 상수

 

 

01. 프로젝트(Project)

 

 

  • 첫 번째 문자는 대/소문자 구분없이 사용 가능합니다.
  • 대문자 사용을 권장합니다.

 

 

02. 패키지(Package)

 

 

  • 소문자로 시작합니다.
  • 모두 소문자 사용을 권장합니다.
  • 여러 사람과 협업하는 경우 표준 패턴을 따릅니다.

 

  • 패키지명은 가급적 한 단어의 명사를 사용합니다.

 

 

03. 클래스(Class)

 

 

  • 파스칼 표기법을 따릅니다.
  • 명사

 

 

04. 인터페이스(Interface)

 

  • 파스칼 표기법을 따릅니다.
  • 형용사

 

 

05. 메소드(Methods)

 

  • 카멜 표기법을 따릅니다.
  • 동사
  • 속성에 접근하는 메소드의 접두사는 'get'과 'set'을 사용합니다.

 

  • 데이터를 조회하는 메소드의 접두사는 'find'를 사용합니다.

 

  • 데이터를 입력하는 메소드의 접두사는 'input'을 사용합니다.

 

  • 데이터를 변경하는 메소드의 접두사는 'modify'를 사용합니다.

 

  • 데이터를 삭제하는 메소드의 접두사는 'delete'를 사용합니다.

 

  • 데이터를 초기화하는 메소드의 접두사는 'initialize'를 사용합니다.

 

  • 반환값의 타입이 boolean인 메소드는 접두사로 'is'를 사용합니다.

 

  • 데이터를 불러오는 메소드의 접두사는 'load'를 사용합니다.

 

  • 데이터가 있는지 확인하는 메소드의 접두사는 'has'를 사용합니다.

 

  • 보다 지능적인 set이 요구될 때 사용하는 메소드의 접두사는 'register'를 사용합니다.

 

  • 새로운 객체를 만든 뒤 해당 객체를 리턴하는 메소드의 접두사는 'create'를 사용합니다.

 

  • 해당 객체를 다른 형태의 객체로 변환해주는 메소드의 접두사는 'to'를 사용합니다.

 

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

 

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

 

 

06. 변수(Variable)

 

 

  • 카멜 표기법을 따릅니다.
  • 약어를 사용하지 않고 모든 의미를 충분히 담습니다.
  • 한 글자로 된 이름을 사용하지 않습니다.
  • 반복문에서 인덱스로 사용할 변수는 i, j, k 등으로 사용합니다.
  • 지역변수와 전역변수는 변수명 앞에 밑줄(_)을 사용하여 구별합니다.
  • boolean 타입의 변수는 접두사로 is를 사용합니다. 

 

 

07. 상수(Constant)

 

 

  • 모든 글자를 대문자로 사용합니다.
  • 스네이크 표기법을 따릅니다.

 

 

참고링크

https://www.javatpoint.com/java-naming-conventions

https://m.blog.naver.com/reona7140/221306141987