## 工廠方法模式
###
又稱工廠模式,是對簡單工廠模式的進一步抽象化,其好處是可以使用系統在不修改原來代碼的情況下引進新的產品,即滿足開閉原則
###
通過工廠類定義負責創建產品的公共接口,通過子類來確定所需要創建的類型
###
相比簡單工廠而言,此種方法具有更多的可擴展性和復用性,同時也增強了代碼的可讀性
###
將類的實例化(具體產品的創建)延遲到了工廠類的子類(具體工廠)中完成,即由子類來決定應該實例化哪一個類
###
## 核?組成
###
IProduct:抽象產品類,描述所有實例所共有的公共接口
Product:具體產品類,實現抽象產品類的接?,??類創建對象,如果有多個需要定義多個
IFactory:抽象??類,描述具體??的公共接?
Factory:具體?場類,實現創建產品類對象,實現抽象??類的接?,如果有多個需要定義多個
###

###
## 優點:
###
符合開閉原則,增加?個產品類,只需要實現其他具體的產品類和具體的??類;
符合單?職責原則,每個??只負責?產對應的產品
使?者只需要知道產品的抽象類,?須關?其他實現類,滿?迪?特法則、依賴倒置原則和??替換原則
迪?特法則:最少知道原則,實體應當盡量少地與其他實體之間發?相互作?
依賴倒置原則:針對接?編程,依賴于抽象?不依賴于具體
??替換原則:俗稱LSP, 任何基類可以出現的地?,?類?定可以出現, 對實現抽象化的具體步驟的規范
###
## 缺點:
###
增加?個產品,需要實現對應的具體??類和具體產品類;
###
## 具體實現(云效代碼study-java項目當中設計模式當中有代碼案例)
###
先來看抽象支付接口和具體支付類:
###

###
再來看抽象工廠接口和具體工廠類:
###

###

- 設計模式六大原則
- 常見的三大設計模式分類
- 創建型模式之單例模式
- 單例模式之懶漢
- 單例模式之餓漢
- 單例模式之如何選擇懶漢餓漢
- 什么情況下使用單例模式
- 創建型模式之工廠模式
- 簡單工廠模式
- 工廠方法模式
- 抽象工廠模式
- 創建型模式之原型模式
- 創建型模式之建造者模式
- 結構型模式之適配器模式
- 接口的適配器模式
- 類的適配器模式
- 結構型模式之橋接模式
- 結構型模式之橋接模式和適配器模式的區別
- 結構型模式之裝飾器模式
- 結構型模式之代理模式
- 結構模式之外觀模式
- 結構模式之享元模式
- 行為模式之策略模式
- 行為模式之模板模式
- 行為模式之觀察者模式
- 行為模式之責任鏈模式
- 行為模式之命令模式
- 行為模式之迭代器模式
- 行為模式之備忘錄模式
- 行為模式之狀態模式