Monday
1. 실무에서 자주 사용하는 Java 코딩 컨벤션 본문
명명 규칙 (Naming Conventions)
기본 명명 규칙
클래스, 메서드, 변수의 이름은 그 용도를 명확히 표현해야 합니다.
클래스와 인터페이스
- 명사로 시작하며 각 단어의 첫 글자는 대문자로 작성합니다
public class StudentManager public interface PaymentProcessor
메서드
- 동사로 시작하며 camelCase를 사용합니다
public void executeTask() public void processPayment()
상수
- 모두 대문자로 작성하며 단어 사이는 언더스코어로 구분합니다
public static final int MAX_COUNT = 100; public static final String DEFAULT_PATTERN = "yyyy-MM-dd";
코드 구조화
메서드 설계
- 하나의 메서드는 하나의 기능만 수행해야 합니다
- 메서드의 매개변수는 4개 이하로 제한하는 것이 좋습니다
// 좋지 않은 예
public void processUserData(String name, int age, String address,
String phone, String email, String occupation) {
// 너무 많은 매개변수
}
// 좋은 예
public void processUser(UserDTO userDTO) {
// DTO를 사용하여 데이터 전달
}
들여쓰기와 공백
- 들여쓰기는 4개의 공백을 사용합니다
- 연산자 전후에는 공백을 넣어 가독성을 높입니다.
// 좋은 예
if (isValid && !isProcessed) {
int result = value + 10;
processResult(result);
}
실무 최적화 팁
객체 생성 최적화
- 불필요한 객체 생성을 피합니다
- 문자열 연결 작업이 많은 경우 StringBuilder를 사용합니다.
// 좋지 않은 예
String result = "";
for (int i = 0; i < 1000; i++) {
result += data[i];
}
// 좋은 예
StringBuilder result = new StringBuilder();
for (int i = 0; i < 1000; i++) {
result.append(data[i]);
}
조건문 작성
- 복잡한 조건문은 가독성을 위해 괄호를 사용합니다
- 중첩된 if문은 피하고 early return을 활용합니다.
// 좋지 않은 예
if (a == b && c == d || e == f) // 연산자 우선순위가 불명확
// 좋은 예
if ((a == b && c == d) || e == f) {
// 명확한 조건 구분
}
주석 작성 가이드
- 코드의 '왜'를 설명하는 주석을 작성합니다.
- 메서드의 목적과 매개변수를 명확히 설명합니다.
/**
* 사용자 결제 정보를 검증하고 처리합니다.
* @param payment 결제 정보 객체
* @return 결제 처리 결과
* @throws PaymentException 결제 처리 중 오류 발생시
*/
public PaymentResult processPayment(Payment payment) throws PaymentException {
// 구현
}
'언어 > Java' 카테고리의 다른 글
3. Java 참조 타입(스트링, 배열, enum) (0) | 2024.11.10 |
---|---|
2. Java 기본 문법(데이터 타입, 변수, 제어문) (0) | 2024.11.10 |
[Java8] Optional 이란? (0) | 2022.04.15 |
[Java8] Stream이란? (0) | 2022.03.13 |
[Java8] 함수형 인터페이스란? (0) | 2022.02.27 |
Comments