Creational Pattern 중 Builder Pattern
Builder Pattern은 특정 instance들을 생성할 때 수행되어야 할 작업이 동일할 경우 적용될 수 있는 pattern이다.


 

<< image 출처 : http://www.dofactory.com/ >>


Director의 경우, Builder의 instance를 인자로 받아, Builder의 method를 실행하는 역할을 수행한다.

이 경우, Director는 어떤 결과물이 만들어 지는지는 상관하지 않고, 결과물 생성에 필요한 Method만을 실행해 준다.

Builder interface를 구현한 ConcreteBuilder에서는 이러한 결과물을 만들기 위한 Method들을 실제로 구현하며,
Method들의 실행결과로 생성되는 결과물을 저장하는 변수를 가진다.
또한, 결과물을 return하기 위한 Method를 가진다.




Builder Pattern을 통하여 얻을 수 있는 장점은,
생성될 때(초기화 될 때) 동일한 과정을 수행해야 하는 서로 다른 Class의 instance에 대하여 통일된 생성방법(초기화 방법)을 제공할 수 있다는 것이다. (서로 동일한 상속관계를 가지지 않는 instance를 동일한 방법으로 생성할 수 있다!!!)


public class Director{
  public void Construct(Builder builder){
  builder.buildA();
  builder.buildB();
}
}

public interface Builder{
public void buildA();
public void buildB();
}

public class ProductA{
...
}
public class ProductB{
...
}

public class ProductABuilder implements Builder{
private ProdctA product = new ProductA();
  public void buildA(){ ...}
pubilc void buildB(){...}
pubilc ProductA getResult(){return product;}
}

public class ProductBBuilder implements Builder{
private ProdctB product = new ProductB();
  public void buildA(){ ...}
pubilc void buildB(){...}
pubilc ProductB getResult(){return product;}

}
by 나무귀신 | 2006/02/23 23:38 | Design Pattern | 트랙백 | 핑백(1) | 덧글(0)
트랙백 주소 : http://schoolor.egloos.com/tb/1497706
☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]
Linked at 끙애내꼬 : Builder P.. at 2009/08/14 15:46

... ,의문문을 번역,명령문을 번역..번역 과정은 동일하지만.... 영문,일문,중문 번역등 이렇게 구분을 하게되면... 이떄 빌더 패턴을 쓴다고 한다.http://schoolor.egloos.com/1497706 를 살펴보면 아래와 같이 정의 된다.'Builder Pattern은 특정 instance들을 생성할 때 수행되어야 할 작업이 동일할 경우 ... more

:         :

:

비공개 덧글



< 이전페이지 다음페이지 >