C#工厂方法模式 -抽象工厂模式
工廠方法到抽象工廠模式
視頻課:https://edu.csdn.net/course/detail/30808
設計原則
要依賴抽象,不要依賴具體類
簡單工廠模式雖然簡單,但存在一個很嚴重的問題。當系統(tǒng)中需要引入新產(chǎn)品時,由于靜態(tài)工廠方法通過所傳入?yún)?shù)的不同來創(chuàng)建不同的產(chǎn)品,這必定要修改工廠類的源代碼,將違背“開閉原則”,如何實現(xiàn)增加新產(chǎn)品而不影響已有代碼?工廠方法模式應運而生,本文將介紹第二種工廠模式——工廠方法模式。
1 什么是工廠方法模式
工廠方法模式(Factory Method Pattern)又稱為工廠模式,也叫虛擬構造器(Virtual Constructor)模式或者多態(tài)工廠(Polymorphic Factory)模式,它屬于類創(chuàng)建型模式。
在工廠方法模式中,工廠父類負責定義創(chuàng)建產(chǎn)品對象的公共接口,而工廠子類則負責生成具體的產(chǎn)品對象,這樣做的目的是將產(chǎn)品類的實例化操作延遲到工廠子類中完成,即通過工廠子類來確定究竟應該實例化哪一個具體產(chǎn)品類。
2 為什么要用該模式
在簡單工廠模式中只提供一個工廠類,該工廠類處于對產(chǎn)品類進行實例化的中心位置,它需要知道每一個產(chǎn)品對象的創(chuàng)建細節(jié),并決定何時實例化哪一個產(chǎn)品類。簡單工廠模式最大的缺點是當有新產(chǎn)品要加入到系統(tǒng)中時,必須修改工廠類,需要在其中加入必要的業(yè)務邏輯,這違背了“開閉原則”。
此外,在簡單工廠模式中,所有的產(chǎn)品都
總結
以上是生活随笔為你收集整理的C#工厂方法模式 -抽象工厂模式的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 三层架构第二课
- 下一篇: C#三层架构之第三次课 业务逻辑层