工廠模式

23種設計模式可以分爲“創建型模式”、“結構型模式”、“行爲型模式”。

 

工廠模式:

類型:創建型模式

 

簡單工廠模式(Simple Factory)是由一個工廠類傳入的參數,動態決定應該創建哪一個產品類的實例,這些產品類繼承同一個父類或接口。簡單工廠模式一般又稱靜態工廠方法模式(Static Factory Method),它屬於類創建模式。

 

優點:工廠類是整個模式的關鍵。包含了必要的邏輯判斷,根據外界給定的信息,決定究竟應該創建哪個具體的對象。使用工廠類,外界可以從直接創建具體產品對象的繁瑣局面擺脫出來。僅需要負責“消費”對象,而不必管這些對象究竟如何創建及如何組織的。明確了各自的自責和權利,有利於這個軟件體系結構的優化。

 

缺點:由於工廠類集中了所有實例的創建邏輯,違反了高內聚責任分配原則,將全部創建邏輯集中到了一個工廠類;它所能創建的類只能是事先考慮到的,如果需要添加新的類,則就需要改變工廠類。當系統中的具體產品類不斷增多的時候,可能就會要求工廠類根據不同條件創建不同實例的需求。這將會導致各種條件的判斷,以便選擇具體的產品類型進行實例化。很容易導致工廠類變得臃腫,功能模塊不斷蔓延。對系統的維護和擴展非常不利。

 

使用場景:

工廠類負責的對象比較少;

客戶只希望負責調用,對如何創建對象和對象內的實現邏輯並不關心;

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