숙련과제를 진행하면서 Getter 메서드 작성 방식에 대해 궁금해져서 적어보았다.
내가 작성한 코드는 직접 Getter 메서드 작성 방식
, 인텔리제이가 추천해준 코드는 Lombok의 @Gettert 사용방식
이었다.
public class CalendarCreateRequestDto {
private String name; // 작성 유저명
private String title; // 할일 제목
private String description; // 할일 내용
private String date; // 작성일
private String modify; // 수정일
public String getName() {
return this.name;
}
}
내가 작성한 코드는 이렇게 직접 작성하는 방식이었다.
이렇게 작성하면 인텔리제이에서 노란색 줄을 그어서 추천하는 코드를 제안해준다.
public class CalendarCreateRequestDto {
@Getter
private String name; // 작성 유저명
private String title; // 할일 제목
private String description; // 할일 내용
private String date; // 작성일
private String modify; // 수정일
}
이유에 대해 ChatGPT에게 물어보니 아래와 같은 내용을 받을 수 있었다.
public String getName() {
return this.name;
}
@Getter
private String name;
Lombok을 사용하는 것이 더 효율적이다.
특히 DTO 클래스처럼 Getter와 Setter만 필요한 간단한 객체에는 Lombok을 사용하는 것이 코드 작성하는데 속도를 높이고 유지보수를 쉽게 만들어준다.
하지만, Getter 메서드에 추가적인 로직이 필요하거나 팀에서 Lombok 사용이 금지된 경우 직접 작성하는 방식을 선택해야한다고 한다.
ChatGPT 답변
일반적으로 Lombok을 사용하는 방식이 더 권장되고 이를 통해 코드를 간결하게 유지하며 유지보수 시간도 줄어든다. 하지만 Lombok 설정과 사용 규칙이 프로젝트에서 합의된 경우에 사용하는 것이 좋다.