DotNet Framework源代碼中的模式(八)——Builder(生成器模式) -开发者知识库

DotNet Framework源代碼中的模式(八)——Builder(生成器模式) -开发者知识库,第1张

 

將一個復雜對象的構件與它的表示分離,使得同樣的構建過程可以創建不同的表述。

DotNet Framework源代碼中的模式(八)——Builder(生成器模式) -开发者知识库,第2张 

建造者(Builder)角色:給出一個抽象接口,以規范產品對象的各個組成成分的建造。一般而言,此接口獨立於應用程序的商業邏輯。模式中直接創建產品對象的是具體建造者(ConcreteBuilder)角色。具體建造者類必須實現這個接口所要求的方法:一個是建造方法,另一個是結果返還方法。

具體建造者(Concrete Builder)角色:擔任這個角色的是於應用程序緊密相關的類,它們在應用程序調用下創建產品實例。這個角色主要完成的任務包括:實現Builder角色提供的接口,一步一步完成創建產品實例的過程;在建造過程完成后,提供產品的實例。

指導者(Director)角色:擔任這個角色的類調用具體建造者角色以創建產品對象。導演者並沒有產品類的具體知識,真正擁有產品類的具體知識的是具體建造者對象。

產品(Product)角色:產品便是建造中的復雜對象。

 

以以.NET Framework 2.0 System.Text. StringBuilder為例

DotNet Framework源代碼中的模式(八)——Builder(生成器模式) -开发者知识库,第3张 

System.Text. StringBuilder

 

DotNet Framework源代碼中的模式(八)——Builder(生成器模式) -开发者知识库,第4张 Code

最佳答案:

本文经用户投稿或网站收集转载,如有侵权请联系本站。

发表评论

0条回复