3 建造者模式 設計模式筆記

2021-07-04 13:51:29 字數 1743 閱讀 1565

分類:

1:建立型模式:

單例模式,工廠模式,抽象工廠模式,建造者模式,原型模式;

2:結構型模式:

介面卡模式,橋接模式,裝飾模式,組合模式,外觀模式,享元模式,**模式

3:行為型模式:

模板方法模式,命令模式,迭代器模式,觀察者模式,中介者模式,備忘錄模式,

直譯器模式,狀態模式,策略模式,職責鏈模式,訪問者模式。

建造者模式:

本質:分離了物件子元件的單獨構造(由builder來負責)和裝配(有direcotr負責).從而可以

構造出複雜的物件。這個模式適用於:某個物件的構建過程複雜的情況下使用。

由於實現了構建和裝配的解耦,不同的構建器,相同的裝配,也可以以做出不同的物件

相同的構建器,不同的裝配順序也可以做出不同的物件。也就是實現了構建演算法,裝配演算法

的解耦,實現了更好的復用。

宇宙飛船由 軌道艙,發動機,逃逸塔組成,裡面有著陸方法:

/**

* * @author administrator 宇宙飛船

*/public class airship

public orbitalmodule getorbitalmodule()

public void setorbitalmodule(orbitalmodule orbitalmodule)

public engine getengine()

public void setengine(engine engine)

public escapetower getescapetower()

public void setescapetower(escapetower escapetower)

}class orbitalmodule

public string getname()

public void setname(string name)

}class engine

public string getname()

public void setname(string name)

}class escapetower

public string getname()

public void setname(string name)

}

構建者:

public inte***ce airshipbuilder 

public class sxtairshipbuilder implements airshipbuilder

@override

public orbitalmodule builderorbitalmodule()

@override

public escapetower builderescapetower()

}

裝配者:

//裝配者

public class sxtairshipdirector implements airshipdirector

//裝配飛船

@override

public airship directorairship()

}

測試類:

public class test 

}

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

建造者模式 builder pattern 將乙個複雜物件的構建與它的表示分離,使的同樣的構建過程可以建立不同的表示。建造者模式的本質是使組裝過程 用指揮者類進行封裝,從而達到解耦的目的 和建立具體產品解耦,使我們不用去關心每個元件是如何組裝的。在軟體系統中,有時需要建立乙個複雜物件,並且這個複雜物...

設計模式學習筆記 建造者模式

1.概述 將乙個複雜物件的構造與它的表示分離,使同樣的構建過程可以建立不同的表示,這樣的設計模式被稱為建造者模式。2.建造者模式中的角色 2.1 建造者 builder 為建立乙個產品物件的各個部件指定抽象介面。2.2 具體建造者 concretebuilder 實現builder的介面以構造和裝配...

設計模式 建造者模式(個人筆記)

一 適用場景以及優缺點 1.適用場景 1 當建立複雜物件的演算法應該獨立於該物件的組成 部分,以及他們的裝配方式時。2 相同的方法,不同的順序,產生不同的事件結果時。3 多個部件或零件,都可以裝配到乙個物件中,但是產生的執行結果又不同時。4 產品類非常複雜,或者產品類中的呼叫順序不同產生了不同的效能...