設計模式之建造者模式

2021-09-29 05:05:36 字數 1574 閱讀 8135

建造者模式

將乙個複雜物件的構建與它的表示分離,使得同樣的構建過程可以建立不同的表示

某產品(product)構建過程基本一致,細節有差異;我們抽象出乙個介面或抽象類(builder)來描述其構建的各個步驟項;通過乙個類(director)指揮者來組織步驟執行的順序即構建流程;具體的細節差異由builder的子類來實現

本例用造車來模擬此模型:

* 產品類:車所具有哪些屬性

* 車標-車架-車輪-車動力-車電池

*/public class car

public void setlogo(string logo)

public string getbody()

public void setbody(string body)

public string getwheel()

public void setwheel(string wheel)

public string getengine()

public void setengine(string engine)

public string getbattery()

public void setbattery(string battery)

}

/**

* 模擬組裝汽車所需的工作-步驟劃分

* 具體組裝由具體車型實現

*/public inte***ce icarbuilder

/**

* 汽車組裝指揮者,理解為組裝(構建)流程,是固定的流水作業

* 這裡只是模擬汽車組裝流程:車體-動力-電池-車輪-廠家logo

* 具體的組裝成mpv,suv還是轎車則由具體的組裝工(建造者)來完成

*/public class cardirector

}

import android.util.log;

public class tangcarbuilder implements icarbuilder

@override

public void addlogo()

@override

public void addwheel()

@override

public void addbody()

@override

public void addengine()

@override

public void addbattery()

}

如上,呼叫方式:

cardirector mdirector = new cardirector();

//構建

mdirector.construct(new tangcarbuilder(new car()));

設計模式之建造者模式

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

設計模式之建造者模式

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

設計模式之建造者模式

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