복잡한 인스턴스 조립하기

 

 

* Builder Pattern

 

 

* 의도

  - 쉽게 교환 가능한 알고리즘을 기반으로 객체를 동적으로 생성한다

 

* 활용

  - 런타임에 생성 프로세스에 대한 제어가 필요할 때

   - 객체 생성 알고리즘이 시스템으로에서 격리가 필요할 때

   - 핵심 코드 변경없이 새로운 생성 기능 추가가 필요할 때

 

 

* 디자인 원리

 

 

* Client - 제품을 만들기 위해 director 와 concrete builder 를 선택한다

Director - 최종 제품을 위해 어떤 파트 및 단계가 필요한지 알고있다.

              하지만, 각 스텝이 어떻게 수행되는지는 모른다

Builder - product 객체의 파트들을 생성하기 위한 추상 인터페이스를 지정한다

Concrete Builder - 어떻게 파트를 생산하고 최종 제품에 추가할지 알고 있다.

                       - Builder interface 를 구현함으로써 파트들을 생성하고 조립한다

                      - 제품을 검색하기 위한 인터페이스를 제공한다

Product - 복잡한 객체를 표현한다

 

- 복합체 패턴은 

- 빌더패턴은 전략 패턴이 복잡한 객체 혹은 데이터 구조 생성을 위해 특화된 경우이다

- Abstract Factory 와 비교하여, 빌더 패턴은 객체를 단계적으로 만들고, 결과는 나중에 요청된다

   (Abstract Factory 를 즉시 리턴한다)

'SW 공학 > ::: 패턴' 카테고리의 다른 글

///[GoF] Decorator Pattern  (0) 2021.09.26
///[GoF] Singleton Pattern  (0) 2021.09.26
///[GoF] Abstract Factory Pattern  (0) 2021.09.26
///[GoF] Factory Method Pattern  (0) 2021.09.26
///[GoF] Mediator Pattern  (0) 2021.09.26

+ Recent posts