設計模式學習筆記---工廠類模式

1.簡單:簡單工廠類裏最重要的創建物體的方法。把創建對象的細節封裝到一個單獨的類中,當需要增加或刪除時修改此類即可。

如下圖所示,其實就是把 createPizza方法從PizzaStore類中分離開到一個單獨的類中,這個類SimpleFactory類就是簡單工廠類。

 

2.中等:把對象的創建委託給子類,子類實現工廠方法(也就是createPizza方法)來創建對象。

createPizza放到對應的子類中實現了。子類PizzaStore 根據 傳入pizza類型參數 實現具體的createPizza。

Pizza的子類也增加爲”Style“ + ”Type“的組合。

3.複雜:考慮如何生成不同Style和不同Type的Pizza。假設其根本原因在於其原料的不同,所以在Pizza類中增加一個 原料工廠類成員。

工廠原料類:創建相關的對象家族的產品。createProduct() 而不是 create(Product)。

而這個原料工廠類具體是什麼,由上一層具體的PizzaStore來指定。

比如NYPizzaStore,指定製作Pizza的原料用NYPizzaIngredientFactory。

 

 總之,所有的工廠方法都是用來封裝對象的創建。

參考:《headfirst設計模式》

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章