生成器设计模式(Builder Design Pattern)

 

生成器设计模式(Builder Design Pattern)

1>.意图

       将一个复杂对象的构建与其表示相分离,使得同样的构建过程可以创建不同的表示。

2>.适用场景

由于显示数据的不同而完全不同的用户界面,例如:E-mail地址簿,既有个人信息也有其它的信息。

3>.特点

       1 生成器允许读者改变产品的内部表示,同时也隐藏了产品如何组装的细节。

2 每个特定的生成器都独立于其他的生成器,同时独立于程序的其他部分,这一点提高了对象的模块性,并使添加其他的生成器变得相对简单。

3 由于每个生成器是根据数据一步一步构建最终结果的,所以能精确的控制生成器构建的每一个结果。

 

4>.类图

 

 

1>.Builder参与者

       规定产生对象实例的接口。包括产生对象实例各个部分的方法和取得最后结果的方法。

2>.ConcreteBuilder

       实现Builder参与者的接口的类。在实际产生对象实例时所调用的方法就是在这里定义的。

3>.Director(监工)

       利用Builder参与者的接口(API)产生对象实例。为了让ConcreteBuilder参与者无论在什么情况下都能正常发挥功能,所以只使用Builder参与者的方法。

4>.Client(客户)

5.实例

 

 

 

  

生成器模式有点类似于抽象工厂模式,两者都返回由许多方法和对象组成的类。他们之间的主要差别是:抽象工厂返回的是一系列相关的类,而生成器是根据提供给他的数据一步一步的构建一个复杂的对象。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值