常見設計模式 工廠模式

2021-09-21 02:20:53 字數 1901 閱讀 7777

簡單工廠模式:

定義:是指由乙個工廠物件決定建立出哪一種產品類的例項。

目的是:解決**重複利用問題,減少冗餘。

優點:只需要傳入乙個正確的引數,就可以獲取所需要的物件,無須知道其建立的細節。

缺點:1、不易於擴充套件過於複雜的產品結構。

2、工廠類的職責相對過重,增加新的產品時需要修改工廠類的判斷邏輯,違背開閉原則。

由此可見:

1、 工廠類負責建立的物件較少。

2、 客戶端只需要傳入工廠類的引數,對於如何建立物件的邏輯不需要關心。

適用場景: 

大部分工廠本身就是乙個單例模式。

工廠方法模式:

定義:乙個建立物件的介面,但讓實現這個介面的類來決定例項化那個類,工廠方法讓類的例項推遲到子類中進行。

適用場景:

1、建立物件需要大量重複的**

2、客戶端(應用層)不依賴於產品類例項如何被建立、實現等細節。

3、乙個類通過其子類來指定建立那個物件

優點:1、使用者只需要關心產品所對應的工廠,無需關心細節。

2、 加入新產品符合開閉原則,提高了系統的可擴充套件性。

缺點:1、類的個數容易過多,增加了**結構的複雜度。

2、增加了系統的抽象性和理解難度。

抽象工廠模式

規定乙個頂層工廠,讓下面子工廠都去繼承該頂層工廠。

我們可以擴充套件工廠以及擴充套件使用不同的生產物件。

優點:1、客戶端(應用層)不依賴於產品類例項如何被建立、實現等細節。

2、強調一系列相關的產品物件(屬於同一產品族)一起使用建立物件需要大量重複的**。

3、提供乙個產品類的庫,所有的產品以同樣的介面出現,從而使客戶端不依賴於具體實現。

缺點:      

1、規定了所有可能被建立的產品集合,產品族中擴充套件新的產品困難,需要修改抽象工廠的介面。

2、增加了系統的抽象性和理解難度。

常見設計模式回顧 工廠模式

工廠模式是最常見的建立型模式,也是大多數人學習設計模式的起點。工廠模式屬於建立型模式,隱藏了物件建立的細節 這裡我們來看一下幾種常用的工廠模式 1.簡單工廠 public inte ce icar public class factory 簡單工廠類 factory 又被稱為 上帝類 想要創造什麼就...

C 常見設計模式 工廠模式

設計模式是對設計原則的具體化。用江湖話說就是武林秘籍,總結出來的一些固定套路,可以幫助有根基的程式設計師迅速打通任督二脈,從此做什麼都特別快。工廠模式主要是為建立物件提供了介面。應用場景如下 a 在編碼時不能預見需要建立哪種類的例項。b 系統不應依賴於產品類例項如何被建立 組合和表達的細節。主要特點...

常見設計模式 工廠模式(建立型模式)

工廠模式分為工廠方法模式和抽象工廠模式。工廠方法模式分為三種 建立乙個工廠類,對實現了同一介面的一些類進行例項的建立。inte ce sender class mailsender implements sender class smssender implements sender public ...