부모 클래스는 HookOperation을 만든다. (구현 부분은 비어있다.)
Factory Method 패턴은 Template Method 패턴이다.
Factory Method 패턴
인스턴스 작성을 하위 클래스에게 위임.
Template method 패턴을 인스턴스 생성에 응용.
Intent : 어떤 클래스의 인스턴스를 생성할지 결정을 서브 클래스에서 결정.
Virtual Constructor로 알려져 있음.
Motivation
프레임워크는 클래스를 인스턴스화 하지만 프레임워크는 추상 클래스만 알고 있기 때문에 클래스의 인스턴스 작업을 수행할 수 없게 됨.
적용범위
생성할 객체 타입을 예측할 수 없을 때
객체 생성 책임을 서브클래스에 위임시키고 그 정보는 은닉하고 싶을 때
※ 클래스의 연관관계를 그림으로 그려보는 것이 중요.
※ Application은 시나리오(추상)
관련 패턴
Abstract Factory : 하나의 제품군을 생성하는 패턴.
'컴퓨터 공부 > 디자인 패턴' 카테고리의 다른 글
[7월 13일 1교시] Builder 패턴 1 (0) | 2009.07.13 |
---|---|
[7월 7일 3교시] Singleton, prototype 패턴 (0) | 2009.07.07 |
[7월 7일 1교시] Adapter 패턴, Template Method (0) | 2009.07.07 |
[7월 6일 3교시] Iterator 패턴, (0) | 2009.07.06 |
[7월 6일 2교시] 디자인 패턴의 동기(Motivation) (0) | 2009.07.06 |