이펙티브 자바
[이펙티브 자바] 아이템 39. 명명 패턴보다 애너테이션을 사용하라
stdio.han
2024. 4. 9. 17:11
명명 패턴 : 변수, 메서드, 클래스 등의 이름을 일정한 패턴에 따라 지정하는 방법. 이는 주로 코드의 가독성을 높이고 일관성을 유지하기 위해 사용된다.
예를 들어, 다음과 같은 명명 패턴이 있을 수 있습니다:
- 변수 이름에는 camelCase를 사용: myVariable, totalAmount, userName 등
- 메서드 이름에는 동사로 시작하여 동작을 나타냄: calculateTotal(), getUserInfo(), sendMessage()
- 클래스 이름은 대문자로 시작하는 CamelCase를 사용: MyClass, UserInfo, HttpRequest 등
import java.lang.annotation.*;
// 애너테이션 정의
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
@interface Test {
// 기본값을 설정하여 필수적으로 값을 지정할 필요가 없도록 함
String value() default "";
}
public class MyClass {
// 애너테이션을 사용하여 테스트 메서드로 지정
@Test("This is a test method")
public void testMethod() {
// 테스트 로직
}
// 테스트 메서드가 아닌 경우
public void normalMethod() {
// 일반 메서드 로직
}
// 애너테이션이 없는 경우
public void anotherMethod() {
// 다른 메서드 로직
}
}
핵심 정리 : 애너테이션으로 할 수 있는 일을 명명 패턴으로 처리할 이유는 없다.