簡單工廠模式

2021-07-16 21:48:02 字數 860 閱讀 1412

簡單工廠模式:就是定義乙個工廠類,對實現了同一介面的類進行例項的建立。

適用場景:

工廠類負責建立的物件非常少

客戶只知道傳入工廠類的引數,對如何建立物件不關心

由於簡單工廠很容易違背高內聚責任分配原則,因此一般只在簡單的情況下使用

優點工廠類是整個模式的關鍵,包含了必要的邏輯判斷。根據外界給定的訊息,決定應當建立哪個具體類的例項,通過使用工廠類,外界可從直接建立具體產品物件的尷尬局面中擺脫出來,僅僅需要消費物件就可以了。而不必管這些物件究竟如何建立及組織的,明確了各自的職責和權力,有利於整個軟體體系結構的優化

缺點1、違反了高內聚責任分配原則,由於工廠類集中實現了所有例項的建立邏輯,將全部建立邏輯集中到了乙個工廠類身上,若需要新增新的類,則需要改變工廠類。

2、當系統中具體產品類不斷增多時,可能會出現要求工廠類根據不同的需求建立不同例項的需求時,這種對條件的判斷和具體產品型別的判斷交錯在一起,很難避免模組功能的蔓延,對系統的維護和擴充套件非常不利。

public inte***ce cpu

public class intelcpu implements cpu

@override

public void calculate()

}public class amdcpu implements cpu

@override

public void calculate()

}public class cpufactory }}

public class computerengineer

public void preparehardwares(int cputype)

}public class client

}

工廠模式 簡單工廠

簡單工廠其實並不是乙個設計模式,反而比較像一種程式設計習慣。我個人的這樣總結簡單工廠 建立乙個類,封裝建立物件的 故事 現在我要開一家披薩店,叫bbk 必敗客 披薩,賣很多種披薩 芝士披薩 榴蓮披薩等等,我有乙個orderpizza string type 方法,根據客戶傳來的type來提供不同的披...

工廠模式 簡單工廠

工廠 處理建立物件的細節。目的 將例項化具體類的 從應用中抽離,或者封裝起來,可以避免干擾應用的其他部分。簡單工廠 簡單工廠其實不是乙個設計模式,反而像一種程式設計習慣。產品實現 desc 產品a public inte ce a class a1 implements a override pub...

簡單工廠模式,工廠模式,抽象工廠模式

三種模式看了一天,記錄下自己的理解 headfirst,比薩店為例 1,簡單工廠模式 乙個具體的工廠類 pizzafactory 乙個抽象的產品類pizza,可以派生出多個具體的產品類 客戶 pizzastore類 工廠類 pizzafactory類關聯產品類pizza,工廠生產出不同型別的pizz...