자바 개발자들의 필수 라이브러리 롬복(Lombok)
롬복은 자바 개발할 때 자주 사용하는 코드 Getter, Setter, 기본생성자. toString 등을 어노테이션으로 자동 생성해준다.
어노테이션?
클래스 또는 메서드 또는 변수 앞에 @Override 같은 @ 표시
이 어노테이션으로 인해 데이터의 유효성 검사 등을 쉽게 알 수 있고, 이와 관련한 코드가 깔끔해지게 됩니다.
일단 어노테이션의 용도는 다양한 목적이 있지만
메타 데이터의 비중이 가장 크다 할 수 있습니다.
메타 데이터?
데이터를 위한 데이터를 의미하며, 풀어 이야기하면 한 데이터에 대한 설명을 의미하는 데이터. (자신의 정보를 담고 있는 데이터)
build.gradle의 dependencies에 다음의 코드 추가
compile('org.projectlombok:lombok')
꼭 새로고침해서 라이브러리를 내려받아야함
(변화가 있다면 아래의 Refresh 버튼이 나타남)
라이브러를 다 받았다면 롬복 플러그인을 설치
"설치한적이 없는데 설치가 되어있었다.."
만약 설치가 안되어 있다면 Preferences > Plugin > "lombok" 검색 > Install 클릭하여 설치
롬복에 대한 설정이 필요함
Preferences > Build, Execution, Deployment > Compiler > Annotation Processors에서 Enable annotation processing을 체크
이제 롬복을 사용할 수 있다.
롬복은 프로젝트마다 설정해야 한다. 플러그인은 한 번만 설치하면 되지만 build.gradle에 라이브러리를 추가하는 것과 Enable annotation processing을 체크하는 것은 프로젝트마다 진행해야한다.
Hello Controller 코드를 롬복으로 전환해보자.
만약 규모가 큰 프로젝트라면 롬복으로 전환할 수 있었을까?
쉽지 않을 것임, 어떤 기능이 제대로 작동될지 안 될지 예측이 불가능하기 때문
하지만 테스트 코드를 만들어 놨기에 테스트 코드가 우리의 코드를 지켜줘서 쉽게 변경 가능하다.
롬복을 변경하고 문제가 생기는지 테스트 코드만 돌려보면 알 수 있기 때문