四 建造者模式

2021-10-04 12:27:17 字數 523 閱讀 9099

建造者模式(builder pattern)使用多個簡單的物件一步一步構建成乙個複雜的物件

意圖:將乙個複雜的構建與其表示相分離,使得同樣的構建過程可以建立不同的表示。

主要解決:主要解決在軟體系統中,有時候面臨著"乙個複雜物件"的建立工作,其通常由各個部分的子物件用一定的演算法構成;由於需求的變化,這個複雜物件的各個部分經常面臨著劇烈的變化,但是將它們組合在一起的演算法卻相對穩定。

何時使用:一些基本部件不會變,而其組合經常變化的時候。

建造者建立步驟:

1、基本元素item的介面,與基本元素相關的otheritem介面。

2、建立otheriterm的實體類。

3、建立基於item的抽象類,並在類中包含2中元素。

4、派生(3)中子類,實現各種具體的item類。

5、建立集合類meal,該類實現list的增刪改查。

6、建造者builder類,輸出包含iter的基本組合meal。

設計模式 四 建造者模式

目錄 前言 1 為什麼要用建造者模式 2 建造者模式怎麼用 3 工廠模式和建造者模式 4 結語 學會了建造者模式之後可能有的朋友疑問更深了,為啥我不能用工廠模式來解決呢,我把建立的 抽取到工廠中去,然後根據客戶端的選擇直接建立產品不就行了嗎?建造者模式是建立型模式中比較特別的乙個模式,但特別只是你主...

設計模式(四)建造者模式

奇怪,我怎麼感覺我寫過這個東西。好吧,我翻了一下,沒有寫。這個東西,和工廠模式差不多。差別在於 工廠模式是生產不同的物件。構建者相當於,選擇不同型號的配件來組裝成品。我突然記起來了,我真的沒有寫過這個東西。是以前看書的時候做過筆記而已。一,設定部件 典型的場景,比如qq秀裝備。設定衣服,帽帽,褲褲,...

設計模式之建造者模式 四

在某些情況下,乙個物件會有一些重要的屬性,在它們沒有恰當的值之前,物件不能作為乙個完整的產品使用。比如,乙個電子郵件有發件人位址 收件人位址 主題 內容 附錄等部分,而在最起碼的收件人位址未被賦值之前,這個電子郵件不能發出。建造者模式將乙個複雜物件的構建與它的表示分離,使得同樣的構建過程可以建立不同...