Java Story

[ Java ] 디자인 패턴 Builder, abstract Factory

WhiteDuck 2016. 1. 25. 17:53

Builder


Builder : 구조를 가진 인스턴스를 쌓아올리는 디자인 패턴

'문서'를 만들 메소드들을 선언하고 있는 추상 클래스로  getResult()네서드를 통해서 완성된 문서를 얻는다,




public abstract class Builder {

public abstract void makeTitle(String titile);

public abstract void makeString(String str);

public abstract void makeItem(String[] items);

public abstract Object getResult();

}



Director : Builder형 클래스 생성자, construct() 메소드를 통해 builder 문서를 채워 인스턴스를 반환


Abstract Factory


abstract factory : 관련된 부품을 조립해서 제품을 만드는 디자인 패턴


추상적인 부품을 조립하여 추상적인 제품을 생산, 구체적으로 어떻게 구현되는지는 생각하지 않고 인터페이스만을 주목하고 있는 상태



추상적인 부품 (Item) : 추상메소드로 하위 클래스에서 구현되도록 기대되고 있음 (반환값을 통해서 구현)


Factory : 각 아이템을 생산


ListFactory extends Factory : Factory에서 생산하는 구체적인 문서를 구현



반응형