그 외/Java

Lombok , JUnit , log4j / slf4j

poppy 2020. 9. 19. 20:34
반응형

1. Lombok(롬복)

Lombok은 Java 라이브러리로 반복되는 getter, setter, toString 등의 메소드 작성 코드를 줄여주는 라이브러리입니다. Java 기반에서 기계적으로 작성하는 VO, DTO, Entitiy 관련 작업을 쉽게 하도록 해주는 도구입니다. Lombok은 여러가지 어노테이션(ex. @Data)을 제공하고 이를 기반으로 코드를 컴파일 과정에서 생성해주는 방식으로 동작하는 라이브러리입니다. 코드에서는 어노테이션만 보이고 getter, setter 등의 메소드가 보이지 않지만 실제로 컴파일된 결과물에서는 코드가 생성되어 있습니다. Lombok은 복잡하고 반복되는 코드를 줄여주기 때문에 코드의 가독성을 높이고, 코딩 생산성을 높일 수 있습니다. 

@Getter
@Setter
@ToString
public class LombokTest {
    private String name;
    private String id;
    priave Integer age;
}

2. JUnit(제이유닛)

JUnitdms Java용 단위 테스트 작성을 위한 산업 표준 프레임워크입니다. 외부 테스트 프로그램을 작성하지 않도록 해주는 단위 테스트 도구입니다. JUint은 보이지 않지만 숨겨진 단위 테스트를 끌어내어 단위 테스트를 쉽게 해줍니다. 문자나 GUI 기반으로 실행되며 어노테이션으로 단위 테스트를 지원합니다.

단위 테스트의 결과는 성공(초록색), 실패(빨간색) 중 하나로 표시합니다. 단정문으로 테스트의 결과를 판별할 수 있습니다.

 

단정문에 어떤 것들이 있는지는 다음 링크를 참고하세요

junit.sourceforge.net/javadoc/org/junit/Assert.html

@Test //Test메소드가 단위 테스트 메소드임을 지정한다는 의미
public void Test() {
    //수행할 코드
}

3. log4j / slf4j

log4j는 'log for java' 의 약자로 자바 로깅 시스템을 쉽게 사용할 수 있도록 해주는 라이브러리입니다. 로그문의 출력을 다양한 대상으로 할 수 있도록 도와주는 도구입니다. System.out.println() 에 비해 속도가 빠릅니다. 계층적인 로그 설정과 처리가 가능합니다. log4j은 6단계의 로그레벨을 사용합니다. 로그레벨에는 FETAL, ERROR, WARN, INFO, DEBUG, TRACE 가 있습니다. 멀티스레드 환경에서 사용해도 안전하고 융통성이 풍부합니다.

 

slf4j는 'Simple Logging Facade For Java' 이 약자로 로깅 프레임워크들을 추상화해놓은 것입니다. 추상 로깅 프레임워크라서 단독으로 로깅할 수 없습니다. log4j 나 logback 같은 로깅 프레임워크를 지원합니다. 로깅 프레임워크를 교체하면 많은 코드 수정이 발생하기 때문에 slf4j 을 사용하고 log4j를 연결하는 것이 좋습니다. 어떤 라이브러리를 사용하든 동일하게 동작하는 코드를 만들기 위해서는 slf4j를 써야합니다. 

 

반응형

'그 외 > Java' 카테고리의 다른 글

자바 빌더 패턴(Builder Pattern)  (0) 2020.09.21
배열(Array)과 ArrayList  (0) 2020.09.18
상속과 다형성  (0) 2020.09.13
자바의 접근제어자  (0) 2020.09.11
Git Bash 설치 및 github 주요 명령어 정리  (0) 2020.09.07