인프런 워밍업 클럽 0기 백엔드 과제1
질문에 대한 내용을 채우는 과제이다
첫 번째 과제는 어노테이션이다
어노테이션에 대한 정의는 조금만 찾아봐도 많이 올라와 있어 따로 적진 않았다.
질문에 대한 답변은 내 개인적인 생각을 담아 나름 요약해서 써본다
질문1 - 어노테이션을 사용하는 이유 (효과) 는 무엇일까?
어노테이션은 정보를 제공한다고 많이 표현한다.
정보라는 것들은 결국 아래 내용들을 얘기하는 것 같다.
- 코드의 가독성을 높히고 설정을 쉽게 할 수 있다.
- 이로인해 중복 코드를 제거하고 각 코드의 역할을 쉽게 주입할 수 있다.
- 이런 어노테이션을 직접 커스텀하여 다른 클래스에 중복되는 역할을 쉽게 부여할 수도 있다.
이렇게 정리해보니 이전에 xml로 정의한 정보들을 더 쉽고 간결하게 제공한다고 생각들었다.
나만의 어노테이션은 어떻게 만들 수 있을까?
어노테이션은 인터페이스를 만들때 앞에 @를 붙이면 된다.
public @interface CustomDoSomthing{
}
여기서 필요한 메타 어노테이션을 추가하면된다.
(메타 어노테이션은 참조 링크 참고)
@Api
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
public @interface CustomDoSomthing{
}
이후 어노테이션을 적용하면 된다
@CustomDoSomething
public class HelloController{
}
느낀점
회사에서 스프링을 사용하지 않다보니 중요한 기능들의 원리를 잘 몰라 많이 공부해야겠다는 생각이 들었다.
어노테이션은 좀 더 깊게 공부를 해야할 것 같다
참조
https://woo-chang.tistory.com/73
https://mangkyu.tistory.com/130
'JAVA&스프링' 카테고리의 다른 글
자바의 람다식 [인프런 워밍업 클럽 0기 - BE 과제 #3] (0) | 2024.02.19 |
---|