c 設計模式23講之工廠模式

2021-09-26 03:09:54 字數 955 閱讀 3688

工廠模式與簡單工廠的區別在與,簡單工廠是工廠類建立例項物件;工廠模式是對不同產品類增加各自的建立工廠類

定義乙個建立產品物件的介面工廠,用介面工廠的派生類實現對產品派生類的建立

(1)產品例項的細節進行封裝,向客戶隱藏了例項化步驟

(2)增加新產品只需增加產品類和生成產品例項的工廠類

(1)產品類與產品例項生成類成對出現和維護

(2)增加了中間類**編寫維護量增加

客戶端對建立例項與使用分離的情況,存在相似產品的集合。

如對不同型別檔案解析等

(1)工廠模式是常用模式之一,基於簡單工廠模式,將根據引數建立例項的步驟分成工廠派生類建立

(2)工廠模式適用於只有一層的產品等級(一維關係)

c 設計模式23講之抽象工廠模式

抽象工廠模式與工廠模式的區別在於,抽象工廠是工廠類的公升級版本。工廠模式適用於一維 產品等級 抽象工廠適用於二維 產品等級與產品簇 提供建立一系列相關或相互依賴的介面,通過具體的工廠類來建立二級產品的物件例項 1 產品例項的細節進行封裝,向客戶隱藏了例項化步驟 2 增加新產品只需增加產品類和生成產品...

c 設計模式23講之裝飾模式

不改變物件前提下動態增加其職責,實現一種比子類更靈活的擴充套件方式 1 比繼承更靈活,不會導致類個數極度增加 2 可以對乙個物件多種裝飾 3 具體構建類和裝飾類可單獨變化 1 會產生很多小物件,占用資源 2 需要區別每個物件的連線關係 3 對於多次裝飾類增加排錯難度 不改變物件增加職責功能的情況 d...

c 設計模式23講之建造者模式

建造者模式是將區域性成員構建成乙個整體,返回整體產品物件,抽象工廠是針對一系列產品的物件建立和返回 將乙個複雜物件的構建與表示分離,通過導演類方法依次組裝好區域性零件返回產品物件 1 客戶端不需知道產品內部細節,只跟建造的導演類有依賴關係 2 具體建造間無相關性,便於擴充套件 3 產品整合建立只在導...