設計模式之建造者模式

2022-09-02 12:57:08 字數 593 閱讀 8792

【定義】建造者模式(builder),將乙個複雜物件的構建與它的表示分離,使得同樣的構建過程可以建立不同的表示。

【場景】乙個簡單的xml解析器,xml解析可以分兩部分,第一部分:開始標籤,結束標籤,屬性等,這部分對於所有的xml檔案處理都是一樣的,因為每個xml都由開始標籤,結束標籤等構成;第二部分:標籤名,標籤屬性名,標籤屬性值等,這一部分會隨著xml的不同,會有不同的處理,因為每個xml的標籤名肯定會有差異。這樣我們可以將xml 解析器物件的建立(包括分析開始標籤,結束標籤等)和它的表示(根據具體的標籤名、屬性名和屬性值)分離。讓xml parser物件擁有乙個builder物件,builder物件有一系列介面,包括對屬性名,屬性值的解析。這樣當處理不同的xml時,更換parser物件的builder物件即可。

【uml】

【**】以下**極不嚴謹,望諒解

#include #include #include using namespace std;

class product

void show()

cout

builder->builderpartb();

}};int main()

設計模式之建造者模式

軟體領域中的設計模式為開發人員提供了一種使用專家設計經驗的有效途徑。設計模式中運用了物件導向程式設計語言的重要特性 封裝 繼承 多型,真正領悟 設計模式的精髓是可能乙個漫長的過程,需要大量實踐經驗的積累。最近看設計模式的書,對於每個模式,用c 寫了個小例子,加深一下理解。主要參考 大話設 計模式 和...

設計模式之建造者模式

建造者模式也叫生成器模式,是一種物件建立型模式,用來隱藏復合物件的建立過程,它把復合物件的建立過程加以抽象,通過子類繼承或過載的方式,動態的建立具有復合屬性的物件。應用場景 物件的建立 builder 模式是為物件的建立而設計的模式 建立的是乙個復合物件 被建立的物件為乙個具有復合屬性的復合物件 關...

設計模式之建造者模式

在做服務介面的時候,往往在業務處理之前需要做業務校驗,格式校驗等業務前處理。這些介面有個相同的特徵,就是必須經過這些處理步驟之後才能做核心的業務處理,拓展的服務介面也必須經過這些處理。基於這個特徵,我們就來分析一下設計模式中,建造者模式。我們先建乙個基礎的服務類 public abstract cl...