回顧工廠方法設計模式的不足:具體產品增加時,系統中類的個數將成對增加,在一定程度上增加了系統的復雜度
模式動機
- 產品等級結構:產品等級結構即產品的繼承結構,即抽象產品與具體產品
- 產品族:在抽象工廠模式中,產品族是指由同一個工廠生產的,位于不同產品等級結構中的一組產品

模式定義
提供一個創建一系列相關或相互依賴物件的介面,而無須指定它們具體的類,抽象工廠模式又稱為Kit模式,屬于物件創建型模式,
模式結構

模式優點
- 隔離了具體類的生成,使得客戶端并不需要知道什么被創建
- 當一個產品族中的多個物件被設計成一起作業時,它能夠保證客戶端始終只使用同一個產品族中的物件
- 增加新的產品族很方便,無須修改已有系統,符合開閉原則
模式缺點
- 增加新的產品等級結構麻煩,需要對原有系統進行較大的修改,甚至需要修改抽象層代碼,這顯然會帶來較大的不便,違背了開閉原則
模式應用情形
- 一個系統不應當依賴于產品類實體如何被創建、組合和表達的細節
- 系統中有多于一個的產品族,但每次只使用其中某一產品族
- 屬于同一個產品族的產品將在一起使用,這一約束必須在系統的設計中體現出來
- 產品等級結構穩定,在設計完成之后不會向系統中增加新的產品等級結構或者洗掉已有的產品等級結構
本文來自博客園,作者:街酒,轉載請注明原文鏈接:https://www.cnblogs.com/sorrymine/p/17371814.html
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/551667.html
標籤:其他
上一篇:我設計了個【方案】:比redis好10倍的kv庫【一統kv】
下一篇:返回列表
