개발/기타

    domain vs dao vs dto

    Domain Object 도메인 객체란 내가 개발하고자 하는 영역을 분석하고, 그 분석의 결과로 도출된 객체들을 말한다. 예를 들어, 쇼핑몰을 만든다고 했을 때 쇼핑몰의 주된 기능인 상품 구매에 사용되는 객체인 Member, Product, Purchase 등을 도메인 객체라고 할 수 있다. DAO(Data Access Object) DB를 사용해 데이터를 조회하거나 조작하는 기능을 전담하도록 만든 객체 DB에 대한 접근을 DAO를 통해서만 하도록 만들어 다수의 원격 호출을 통한 오버헤드와 호출 문제를 줄일 수 있다. DTO(Domain Transfer Object) 계층간 데이터 교환을 위한 객체. 일반적인 DTO는 로직을 갖고 있지 않다. 순수한 데이터 객체이며 속성과 그 속성에 접근하기 위한 set..

    [Lombok] RequiredArgsConstructor 어노테이션

    생성자 자동 생성 Lombok을 사용하면 생성자도 자동으로 생성할 수 있습니다. @NoArgsConstructor 어노테이션은 파라미터가 없는 기본 생성자를 생성해주고, @AllArgsConstructor 어노테이션은 모든 필드 값을 파라미터로 받는 생성자를 만들어줍니다. 마지막으로 @RequiredArgsConstructor 어노테이션은 final이나 @NonNull인 필드 값만 파라미터로 받는 생성자를 만들어줍니다. @NoArgsConstructor @RequiredArgsConstructor @AllArgsConstructor public class User { private Long id; @NonNull private String username; @NonNull private String pa..

    [Lombok] @Slf4j 어노테이션 사용

    클래스를 생성할 때마다 항상 로그를 남기기 위해 Logger 변수를 선언해야 했는데 Lombok의 @Slf4j 어노테이션을 사용하면 편하게 사용할 수 있습니다. @Slf4j어노테이션 사용시 변환되는 코드는 아래와 같습니다. // source @Slf4j public class LogExample { } // generate public class LogExample { private static final org.slf4j.Logger log = org.slf4j.LoggerFactory.getLogger(LogExample.class); }

    The 2020 Web Developer Roadmap (개발자 로드맵)

    출처 levelup.gitconnected.com