언어 및 도구들 공부/Java

Java lombok 라이브러리

Dr.Mlem 2024. 9. 30. 12:57

Q.
Java 라이브러리의 lombok은 뭐하는 기능이야?

Lombok은 자바에서 반복적인 코드를 줄이기 위해 사용되는 라이브러리입니다. 주로 보일러플레이트 코드(반복적으로 작성해야 하는 코드)를 자동으로 생성해 주기 때문에, 코드의 가독성을 높이고 개발 시간을 단축하는 데 도움을 줍니다. Lombok의 주요 기능은 다음과 같습니다:

  1. Getter/Setter 자동 생성: 클래스 필드에 대해 @Getter와 @Setter 애노테이션을 사용하면, 해당 필드에 대한 getter와 setter 메서드가 자동으로 생성됩니다.
     

    java

    @Getter @Setter
    private String name;

  2. toString, equals, hashCode 메서드 자동 생성: @ToString, @EqualsAndHashCode 등의 애노테이션을 사용하여 이 메서드들을 자동으로 구현할 수 있습니다.
    java

    @ToString
    @EqualsAndHashCode
    public class MyClass {
        private int id;
        private String name;
    }
     
  3. 생성자 자동 생성: @NoArgsConstructor, @AllArgsConstructor, @RequiredArgsConstructor 등의 애노테이션을 사용하여 매개변수 없는 생성자, 모든 필드를 매개변수로 받는 생성자, 또는 final 필드만을 매개변수로 받는 생성자를 자동으로 생성할 수 있습니다.
     

    java

    @AllArgsConstructor
    public class MyClass {
        private final int id;
        private String name;
    }

  4. Builder 패턴 자동 생성: @Builder 애노테이션을 사용하여 객체를 유연하게 생성할 수 있는 Builder 패턴을 자동으로 지원합니다.

    java

    @Builder
    public class MyClass {
        private int id;
        private String name;
    }

  5. 로그 기능: @Slf4j, @Log 등의 애노테이션을 사용하면 로그 객체를 자동으로 생성하여 로그를 출력할 수 있습니다.

    java
    @Slf4j
    public class MyClass {
        public void doSomething() {
            log.info("This is a log message");
        }
    }

이처럼 Lombok은 자바에서 반복적인 코드 작성을 줄이고, 코드의 가독성을 높여주는 데 크게 기여하는 라이브러리입니다.