Builder

bird.j·2021년 4월 10일
0

SpringBoot

목록 보기
11/22

💡 Builder 패턴이란?


복합 객체의 생성 과정과 표현 방법을 분리하여 동일한 생성 절차에서 서로 다른 표현 결과를 만들 수 있게 하는 패턴.
생성자에 인자가 많을 때는 빌더 패턴을 고려해보는 것이 좋다.



💡 Builder 패턴 사용 시 장점


  • 인자가 많을 경우에 쉽고 안전하게 객체를 생성할 수 있다.

  • 인자의 순서와 상관없이 객체를 생성할 수 있다.

  • 적절한 책임을 이름에 부여하여 가독성을 높일 수 있다.
    (어떤 변수가 어떤 의미인지 쉽게 파악 가능하다.)

  • 생성자 패턴은 지금 채워야할 필드가 무엇인지 명확히 지정할 수 없지만 빌더 패턴을 사용하면 어느 필드에 어떤 값을 채워야할 지 명확하게 지정할 수 있다.

  • 원하는 변수만 객체에 삽입 가능하게 한다.

  • 무분별한 setter 남용 x



 User newUser = User.builder()
                        .username(user.get("username"))
                        .password(passwordEncoder.encode(user.get("password")))
                        .name(user.get("name")).build();

0개의 댓글