0.c#設計模式-簡單工廠模式
1.c#設計模式--工廠方法模式
簡單工廠模式的工廠類隨著產品類的增加需要增加額外的**
工廠方法模式每個具體工廠類只完成單個例項的建立,所以它具有很好的可擴充套件性
但是在實際應用中,乙個工廠不止會建立單一的產品,因為現在的工廠都多元化了,乙個工廠建立一系列的產品,這就引入了抽象工廠的概念。
抽象工廠模式是圍繞乙個超級工廠建立其他工廠。該超級工廠又稱為其他工廠的工廠。這種型別的設計模式屬於建立型模式,它提供了一種建立物件的最佳方式。在抽象工廠模式中,介面是負責建立乙個相關物件的工廠,不需要顯式指定它們的類。每個生成的工廠都能按照工廠模式提供物件。
下面以乙個生產手機主要配件為例子,假設手機工廠需要生產手機螢幕和手機主機板,倆條生產線,那麼不同品牌的手機工廠生產出的螢幕和主機板各不相同。
///抽象工廠類:提供建立不同品牌的手機螢幕和手機主機板
3///
4public
abstract
class
abstractfactory
5screen手機螢幕類
1motherboard手機主機板類///2
///螢幕抽象類:提供每一品牌的螢幕的繼承
3///
4public
abstract
class
screen
5
1///2
///主機板抽象類:提供每一品牌的主機板的繼承
3///
4public
abstract
class
motherboard
5
1///2
///蘋果手機螢幕
3///
4public
class
510 }
1xiaomiscreen小公尺手機螢幕類///2
///蘋果手機主機板
3///
4public
class
510 }
1xiaomimotherboard小公尺手機主機板類///2
///小公尺手機螢幕
3///
4public
class
xiaomiscreen:screen
510 }
1///2
///小公尺手機主機板類
3///
4public
class
xiaomimotherboard :motherboard
510
1xiaomi手機工廠類///2
///蘋果手機工廠
3///
4public
class514
15///
16///
生產蘋果手機主機板
17///
18///
19public
override
motherboard createmotherboard()
2023 }
1///2
///小公尺手機工廠類
3///
4public
class
xiaomifactory : abstractfactory514
15///
16///
生產小公尺手機主機板
設計模式 C 設計模式 抽象工廠模式
設計模式 物件導向設計七大原則 設計模式 設計模式概念和分類 設計模式 c 設計模式 單例模式 設計模式 c 設計模式 工廠方法模式 設計模式 c 設計模式 抽象工廠模式 設計模式 c 設計模式 建造者模式 設計模式 c 設計模式 原型模式 抽象工廠模式包含如下角色 abstractfactory ...
c 設計模式(抽象工廠模式)
good 定義了乙個建立一系列相關或相互依賴的介面,而無需指定它們的具體類。用於交換產品系列,如access sql server 產品的具體類名被具體工廠的實現分離 例 include include include using namespace std 使用者抽象介面 class iuser ...
C 設計模式 抽象工廠模式
為建立一組相關或相互依賴的物件提供乙個介面,而且無需指定他們的具體類。抽象工廠模式是所有形態的工廠模式中最為抽象和最具一般性的一種形態。抽象工廠模式是指當有多個抽象角色時,使用的一種工廠模式。抽象工廠模式可以向客戶端提供乙個介面,使客戶端在不必指定產品的具體的情況下,建立多個產品族中的產品物件。應用...