[공통]
1. 대소문자가 구분되어야 하고, 길이에 제한이 없다.
주석을 사용해서 변수를 설명하는게 아니라 변수명을 길게 하더라도 의미부여를 명확하게 해야 한다.
2. 자바에서 사용하고 있는 예약어는 사용하지 않는다.
예) class, import, break 등
3. 숫자로 시작하면 안 된다.
4. 특수문자는 '_(언더바)'와 '$'만 허용한다. 단, 자주 사용하지는 않는다.
//변수명에 사용하는 예시
int my_variable = 10;
String user_name = "John";
//메서드명에 사용하는 예시
public void calculate_total() { ... }
private String format_text() { ... }
//클래스명에 사용하는 예시
public class User_Details { ... }
class Payment$Processor { ... }
//패키지명에 사용하는 예시
package com_example_project;
package org$company_name;
5. 파스칼 표기법(PascalCase)과 카멜 표기법(camelCase)을 사용한다.
파스칼 표기법은 주로 클래스 이름이나 인터페이스 이름을 지을 때 사용되고, 카멜 표기법은 변수명, 메서드명, 함수명 등에서 사용된다.
//파스칼 표기법
ClassName, CalculateTotal, UserDetails
//카멜 표기법
methodName, calculateTotal, userDetails
6. 반의어는 반드시 대응하는 개념으로 사용해야 한다.
enable/disable | 활성화/비활성화 |
start/stop | 시작/정지 |
add/remove | 추가/제거 |
insert/delete | 삽입/삭제 |
create/destroy | 창조/파괴하다 |
get/set | 받다/얻다 |
[패키지]
1. 모두 소문자로 작성해야 한다.
예) com.example.project
2. 일반적으로 역순으로 된 도메인 이름을 사용한다.
예) com.naver.project
3. 명확하고 간결하게 이름을 작성해야 한다. (가급적 한 단어를 사용하고, 최대한 줄임말을 사용하지 않는다.)
예) com.example.utilities, org.company.project.services
[클래스]
1. 첫 글자를 대문자로 시작하고 구분되는 글자마다 첫 글자를 대문자로 사용한다. (파스칼 표기법)
예) UserInfo
2. 클래스명은 명사로 시작한다.
[메서드]
1. 첫 글자를 소문자로 시작하고 구분되는 글자마다 첫 글자를 대문자로 사용한다. (카멜 표기법)
예) getUserInfo, printReport
2. 해당 메서드의 기능과 목적을 잘 반영하도록 명확하고 간결하게 지어야 한다.
3. 메서드 이름은 동사로 지어서 사용한다.
메서드의 단일 책임 원칙에 따라 하나의 구체적인 역할이나 기능을 수행할 수 있게 알맞은 동사를 사용해 이름을 짓는다.
[변수]
1. 소문자나 카멜 표기법으로 작성한다.
String userName;
Integer number
[상수(final)]
1. 모두 대문자를 사용해야 한다. 여러 단어를 포함하는 경우 언더스코어("_")를 사용하여 단어와 단어 사이를 구분해 준다.
2. final 키워드를 사용해 값을 변경할 수 없도록 해야 한다.
final int MAX_VALUE = 100;
final String DEFAULT_COLOR = "RED";
[참고]
https://www.oracle.com/java/technologies/javase/codeconventions-namingconventions.html
'Java > Java' 카테고리의 다른 글
[Java] 제네릭의 이해2 (0) | 2024.05.07 |
---|---|
[Java] 제네릭의 이해1 (0) | 2024.04.30 |
[Java] 자주 사용하는 Stream 정리 (1) | 2024.03.15 |
[Java] 객체지향프로그래밍(OOP) / SOLID 원칙 이란? (1) | 2024.02.16 |
[JPA] JPA(+QueryDSL) vs Mybatis 사용후기 (0) | 2024.01.04 |