[大話設計模式] 重點筆記:工廠模式 (Factory Method)
[Ch.08]
原文定義:
Define an interface for creating an object, but let subclasses decide which class to instantiate. Factory Method lets a class defer instantiation to subclasses.
UML圖:p.106 或參考連結
重點筆記:
1.Creator中有一個抽象的FactoryMethod方法,負責生成Product類型的物件,但延遲到ConcreteCreator中來實現。
2.設計時我們專注於Product介面操作的抽離,讓ConcreteProduct的多型特性來完成實際操作。
3.由用戶端依需要來決定實體化哪一個工廠。
4.工廠方法不同於簡單工廠中的工廠類別包含了邏輯判斷,它將判斷移往用戶端,主要改善了簡單工廠違反開放封閉原則的缺陷。
參考資源:
http://www.dofactory.com/Patterns/PatternFactory.aspx
http://www.javaworld.com.tw/confluence/display/designpattern/Factory+Method
http://www.cnblogs.com/Terrylee/archive/2006/01/04/310716.html