출처 : https://dkswnkk.tistory.com/539
공통
- 대소문자가 구분되며 길이에 제한이 없다.
- 예약어를 사용해서는 안 된다.
- 숫자로 시작해서는 안 된다.
- 특수문자는 '_' 혹은 '$'만 허용한다.
- 파스칼 표기법(PascalCase)과 카멜 표기법(camelCase)을 사용한다.
- 반의어는 반드시 대응하는 개념으로 사용해야 한다.
1. Project(프로젝트)
- 대/소문자 구분없이 시작 가능하다.
- 대문자 사용을 권장한다.
2. Package(패키지)
- 패키지명은 대소문자를 모두 허용 하지만 클래스명과 쉽게 구분하기 위해서 소문자로 하는 것을 원칙 으로 하고 있다.
- 표준 패턴을 따른다. Ex) [com].[Company].[Project].[toppackage].[lowerpackage]
- 가급적 한 단어 사용을 권장한다.
- 좋은 예: com.nexon.maplestory.member.object
- 나쁜 예: com.nexon.maplestoryMemberObject
3. Class(클래스)
- 파스칼 표기법을 사용한다.
- 명사로 시작한다.
- Ex) HelloWorld, TestWorld, ByeClass
4. interface(인터페이스)
- 특별한 접두사나 접미사를 사용하지 않고 파스칼 표기법을 사용한다.
- 형용사를 사용한다.
- Ex) Runnable, Remote 등
5. Methods(메서드)
- 카멜 표기법을 사용한다.
- 동사로 시작한다.
5.1) 속성에 접근하는 메서드 명의 접두사는 'get','set'을 사용한다.
(ex. public void setDisplayName)
(ex. public void getDisplayName)
5.2) 데이터를 조회하는 메소드명의 접두사는 find를 사용한다.
(ex. public void findData(String data){})
5.3) 데이터를 입력하는 메소드명의 접두사는 input을 사용한다.
(ex. public void inputData(HashMap data){})
5.4) 데이터를 변경하는 메소드명의 접두사는 modify를 사용한다.
(ex. public void modifyData(HashMap data){})
5.5) 데이터를 삭제하는 메소드명의 접두사는 delete를 사용한다.
(ex. public void deleteData(String data){})
5.6) 데이터를 초기화하는 메서드 명의 접두사는 initialize을 사용한다.
(ex. public void initData(String data){})
5.7) 반환 값의 타입이 boolean인 메서드는 접두사로 is를 사용한다.
(ex. public void isData(String Data){})
5.8) 데이터를 불러오는 메서드 명의 접두사는 load를 사용한다.
(ex. public void loadData(){})
5.9) 데이터가 있는지 확인하는 메소드명의 접두사는 has를 사용한다.
(ex. public void hasData(){})
5.10) 새로운 객체를 만든 뒤 해당 객체를 리턴해주는 메서드 명의 접두사는 create를 사용한다.
(ex. public void createAccount(){})
5.11) 해당 객체를 다른 형태의 객체로 변환해주는 메서드 명의 접두사는 to를 사용한다.
(ex. public void toString(){})
5.12) 해당 객체가 복수인지 단일인지 구분하는 메서드 명의 접미사는 s를 사용한다.
(ex. public void getMembers(){})
5.13) B를 기준으로 A를 하겠다는 메소드명의 전치사는 By를 사용한다.
(ex. public void getUserByName(String name){})
6) Variable(변수)
- 소문자로 시작한다.
- 카멜 표기법을 사용한다.
- ex) firstName , lastName , birthday 등
7. Constant(상수)
- 전부 대문자로 표기한다.
- 스네이크케이스를 사용하여 '_'로 구분한다.
- ex) MAX_PRIORITY , LIFESPAN 등
'백앤드 이야기 > JAVA&Spring' 카테고리의 다른 글
[JAVA] URL query parsing, 주소 파라메터 파싱 (0) | 2023.11.16 |
---|---|
[JAVA] 자바로 셀레니움(Selenium)을 구현해보자!(크롤링) (0) | 2023.10.28 |
[JAVA&기타] 네이밍 규칙 (0) | 2022.03.11 |
[JAVA] Optional 기능 메모 (0) | 2021.07.13 |
[Spring] Spring REST Docs 활용하여 API 문서 만들기 (0) | 2021.06.30 |
댓글