設計模式之建立型模式

2021-08-03 00:23:38 字數 1201 閱讀 8074

建立型模式主要關注物件的建立過程,將物件的建立過程進行封裝,使客戶端可以直接得到物件,而不用去關心如何建立物件。

有五種建立型模式:

1. 單例模式(singleton)

意圖

保證乙個類僅有乙個例項,並提供乙個訪問它的全域性訪問點。

優點

2. 工廠方法模式(factorymethod)

意圖

1)定義乙個用於建立物件的介面,讓子類決定例項化哪乙個類;

2)使乙個類的例項化延遲到其子類。 

優點

實現了開閉原則,可以在不改變工廠的前提下增加新產品。

3. 抽象工廠模式(abstractfactory)

意圖

用於建立一組相關或相互依賴的複雜物件。

附註:簡單工廠、工廠方法、抽象工廠比較

簡單工廠,工廠方法,抽象工廠都屬於設計模式中的建立型模式。其主要功能都是幫助我們把物件的例項化部分抽取了出來,優化了系統的架構,並且增強了系統的擴充套件性。

區別

4. 建造者模式(builder)

意圖

將乙個複雜物件的構建與它的表示分離,使得同樣的構建過程可以建立不同的表示。

優點

採用建造者模式可以輕鬆地改變產品的內部表示。建造者模式將構造**和表示**分開。構造過程可以更精細地控制,生成器模式強調的是產品的構造過程,產品各部分具有依賴關係非常重要。

附註:與抽象工廠模式的比較

生成器模式關注於將構造物件的過程和構造的各個部分分開,而抽象工廠關注於構建乙個產品系列。實際上,最大的區別是生成器模式建立的產品不一定有共同的父類,只要有類似的構造過程即可。

5. 原型模式(prototype)

意圖

用原型例項指定建立物件的種類,並且通過拷貝這些原型建立新的物件,也即通過乙個已存在物件來進行新物件的建立。

優點

引入prototype模式後不再需要乙個與具體產品等級結構平行的工廠方法類,減少了類的構造,同時客戶程式可以在執行時刻建立和刪除原型。

設計模式之建立型模式

設計模式被分成了三大型別 建立型 結構型和行為型。本文介紹一下建立型模式。建立型模式包括抽象工廠模式 建造者模式 工廠方法模式 原型模式和單例模式。好處 1 易於交換產品系列,由於具體工廠類,在乙個應用中只需要在初始化的時候出現一次,這就使得改變乙個應用的具體工廠變得非常容易,它只需要改變具體工廠即...

設計模式之建立型模式

設計模式 是指在軟體開發中,經過驗證的,用於在特定環境下 重複出現的 特定問題的解決方案。創 建型模式 抽象了物件例項化過程,用來幫助建立物件的例項。包括 簡單工廠模式 factory 工廠方法模式 factory method 抽象工廠模式 abstract factory 建造者模式 build...

設計模式之建立型模式

建造者模式 將乙個複雜物件的構建與它的表示分離,使得相同的構建過程可以建立不同的表示 例子 建造小人的過程是一樣的,建造的細節不同罷了 例子 外國的麥當勞等不過百年的洋快餐在千年飲食文化的中國發展很好 product類 class product public void show builder類 ...