建造者模式的理解

2021-08-15 15:58:51 字數 618 閱讀 6314

通過閱讀csdn部落格,記錄筆記、重點及理解:

建造者模式與抽象工廠模式有點相似,但是建造者模式返回乙個完整的複雜產品,而抽象工廠模式返回一系列相關的產品;在抽象工廠模式中,客戶端通過選擇具體工廠來生成所需物件,而在建造者模式中,客戶端通過指定具體建造者型別並指導director類如何去生成物件,側重於一步步構造乙個複雜物件,然後將結果返回。如果將抽象工廠模式看成乙個汽車配件生產廠,生成不同型別的汽車配件,那麼建造者模式就是乙個汽車組裝廠,通過對配件進行組裝返回一輛完整的汽車。

在建造者模式中,客戶端只需例項化指揮者類,指揮者類針對抽象建造者程式設計,客戶端根據需要傳入具體的建造者型別,指揮者將指導具體建造者一步一步構造乙個完整的產品(逐步呼叫具體建造者的buildx()方法),相同的構造過程可以建立完全不同的產品。

建造者模式比喻為汽車組裝廠,抽象工廠處生產零件,而使用者要買汽車時無需知道汽車是怎麼組裝的,因此需要乙個direct類與使用者打交道。

案例:

建造者模式的理解

簡單說說我對建造者模式的理解吧,我們去kfc點餐,乙個food和一杯飲料的 一 可樂 雞翅 2 雪碧 薯條 當然kfc的針對 分配了服務員,你去前台點餐的時候,只需要說老闆,我要 某某就可以了,其他的事情嘛,某某的服務員會給你辦理的妥妥的。現在梳理一下對應的角色 這樣的話 類需要給出,包括了哪些菜品...

理解設計模式中的建造者模式

到目前為止,我們已經學習了五種建立型模式中的四種,它們分別是單例模式 工廠方法模式 抽象工廠模式和原型模式。不同的模式適用的的應用場景有所不同,但也並不是完全隔絕,需要使用者根據具體的應用場景選擇合適的模式。本文將介紹建立型模式中的最後一種,即建造者模式,並通過 的方式進行闡述,同時和之前的幾種模式...

建造者模式

1.定義 將乙個複雜物件的構建與它的表示分離,使得同樣的構建過程可以建立不同的表示。2.uml 類圖 結構 該結構 演示了複雜物件被一步一步建立的建造者模式。builder pattern structural example using system using system.collection...