簡單工廠模式和抽象工廠模式

山有木xi發表於2020-03-11

簡單工廠模式,顧名思義,就是比較簡單的一個模式,並且使用在業務比較簡單的情況下,且具體產品不需要擴張

它由三種角色組成

  • 工廠類,是這個模式的核心,含有一定的邏輯和判斷,根據邏輯不同,產生具體的工廠產品

  • 抽象產品:具體產品的父類

  • 具體產品:工具抽象產品類建立的具體產品類,具體實現某些產品的功能

例如:先建立一個工廠類:飲料類,然後建立抽象產品類,分為康師傅類和統一類,再建立各自具體產品類,飲料各繼承康師傅和統一,最後在工廠類中調動各個產品的生產

在具體工廠中,各個具體產品類和其父類非常簡單明瞭


抽象工廠模式,是簡單工廠的進階版,當你的產品需要多個產品線時,使用抽象工廠是更好的選擇

它有四種角色組成

  • 抽象工廠類,宣告瞭建立不同產品的方法

  • 具體工廠類,實現抽象工廠中定義的建立方法

  • 抽象產品類,為每種產品宣告業務方法

  • 具體產品類,定義具體工廠生產的具體產品,並且實現抽象產品中定義的業務方法

在上面介紹的簡單工廠模式中,我們發現,工廠是用來生產具體產品的,而在抽象工廠模式中,分為了抽象工廠和具體工廠

簡單的來說,在抽象產品類中定義了所需要的生產線,然後在具體產品中實現所需要的生產線,定義了方法來實現生產線,在具體工廠中實現具體產品

抽象工廠模式相比於簡單工廠模式,隔離了具體類的生成,使得客戶並不需要知道什麼被建立。由於這種隔離,更換一個具體工廠就變得相對容易。所有的具體工廠都實現了抽象工廠中定義的那些公共介面,因此只需改變具體工廠的例項,就可以在某種程度上改變整個軟體系統的行為。另外,應用抽象工廠模式可以實現高內聚低耦合的設計目的,因此抽象工廠模式得到了廣泛的應用。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69917874/viewspace-2679657/,如需轉載,請註明出處,否則將追究法律責任。

相關文章