建立型設計模式之工廠三兄弟

2021-10-07 04:15:08 字數 899 閱讀 1003

如題,今天我要將工廠模式三兄弟總結下,工廠三兄弟即:簡單工廠模式、工廠方法模式、抽象工廠模式。

簡單工廠模式

簡單工廠:簡單工廠定義了乙個用於生產物件的類,用來封裝生產不同的產品例項的細節,使建立物件的邏輯與客戶端相分離。客戶端只需要向這個類進行申請,即可獲得相應的產品例項,不需要關心物件的建立過程。

簡單工廠模式的組成:工廠類、抽象產品類、具體產品類。

優點:封建物件的建立過程,使客戶端與具體的建立物件邏輯相分離。

缺點:在進行功能的擴充套件時,需要修改生產物件類中的switch語句,導致不符合開放-封閉原則。

uml圖

工廠方法模式

工廠方法模式:定義乙個用於建立物件的介面,子類來決定例項化哪乙個類。工廠方法使類的例項化延遲到子類中。

工廠方法模式的組成:抽象工廠類、具體工廠類、抽象產品類、具體產品類

優點:符合單一職責原則,每個工廠只負責它自己的產品。

缺點:如果需要增加新的產品,就必須擴建乙個新的工廠類。

uml圖

抽象工廠模式

抽象工廠模式的組成:抽象工廠類、具體工廠類、抽象產品類、具體產品類

優點:方便在生產不同的產品之間切換,如果想要生產不同的產品,只需要切換具體的工廠類。

缺點:擴充新的產品時比較繁瑣

寫在結尾:

看我畫的uml圖,大概就知道我**的心態了吧。

設計模式之工廠模式(建立型)

什麼是設計模式?每乙個模式描述了我們周圍不斷重 生的問題,以及該問題的解決方案的核心。這樣,你就能一次又一次地使用該方案而不必做重複勞動。1.簡單工廠 factory 當看到 new 時,就會想到 具體 pizza pizza new cheesepizza 當有很多種pizza時,我們需要用選擇語...

設計模式 建立型之工廠模式

讓乙個單獨的類專門實現乙個方法,根據傳入的型別引數建立不同型別的物件,並返回他們的抽象,這種建立物件的模式叫做工廠模式 工廠模式分為簡單工廠模式 工廠方法模式和抽象工廠模式 工廠模式將不同子類的例項化的過程封裝在單獨的類,讓子類只專注於實現,實現了功能解耦 簡單工廠模式由三部分組成 父類介面 pub...

設計模式之建立型 工廠模式

工廠模式 實現了建立者和呼叫者的分離 分類 簡單工廠模式 用來生成同一等級結構中的任意產品 對於增加新的產品,需要修改已有的 工廠方法模式 用來生成同一等級結構中的固定產品 支援增加任意產品 抽象工廠模式 用來生成不同產品族的全部產品 對於增加新的產品,無能為力,支援增加產品族 物件導向設計的基本原...