建造者模式是將區域性成員構建成乙個整體,返回整體產品物件,抽象工廠是針對一系列產品的物件建立和返回將乙個複雜物件的構建與表示分離,通過導演類方法依次組裝好區域性零件返回產品物件
(1)客戶端不需知道產品內部細節,只跟建造的導演類有依賴關係
(2)具體建造間無相關性,便於擴充套件
(3)產品整合建立只在導演類方法中,便於修改
(1)建立的產品必須具有共性,否則導演類建造方法會很複雜
(2)產品內部比較複雜(既有眾多的區域性成員)具體的建造類會很龐大
產品內部結構具有多個成員變數,成員變數滿足一定的建造順序
如:電腦組裝
director:導演類,實現產品區域性零件的組裝;product_builder_pattern:具體產品構建類,實現每個產品成員構建的方法
product:產品類,包含區域性零件的成員
(1)建設者模式功能是實現將產品的零件組裝成乙個完整的產品(類似於組裝手辦)
(2)參品類只需知道組成的成員,無需關心成員流水線建立過程
(3)整合建立過程(類似組裝總廠)負責對所有成員的組裝,具體產品建造類提供對產品每個成員零件的封裝方法
23種設計模式之建造者模式
建造模式的本質 分離了物件子元件的單獨構造 有builder來負責 和裝配 由diretor負責 從而可以構造出複雜的物件。這種模式適用於 某個物件的構建過程複雜的情況下使用。由於實現了構建和裝配的解耦。不同的構建器,相同的裝配,也可以做出不同的物件 相同的構建器,不同的裝配順序也可以做出不同的物件...
23種設計模式之建造者模式
主要作用 在使用者不知道物件的建造過程和細節的情況下就可以直接建立複雜的物件。使用者只需要給出指定複雜物件的型別和內容,建造者模式負責按順序建立複雜物件 把內部的建造過程和細節隱藏起來 例子 角色分析 建圖紙 記錄建房的方法,步驟 抽象的建造者 方法 public abstract class bu...
23種設計模式之建造者模式
建造者模式也叫生成器模式,定義如下 將乙個複雜物件的構建與它的表示分離,使得同樣的構建過程可以建立不同的表示 類圖如下 在建造者模式中,四個角色如下 product 產品類 通常是實現了模板方法模式,也就是有模板方法和基本方法 builder 抽象建造者 規範產品的組建,一般是由子類實現 concr...