生成器模式

Posted by 程序亦非猿 on 2016-08-01

设计模式专题系列: 设计模式

生成器模式

使用生成器模式封装一个产品的构造过程,并允许按步骤构造。

在Android中比较常见了,比如 Dialog,,另外在EffectiveJava的笔记中也有提到,就不多说了.

用途:

  1. 经常被用来创建组合结构.

优点:

  1. 将一个复杂对象的创建过程封装起来.
  2. 允许对象通过多个步骤来创建,并且可以改变过程(这和只有一个步骤的工厂模式不同)
  3. 向客户隐藏产品内部的表现
  4. 产品的实现可以被替换,因为客户只看到一个抽象的接口.

缺点:

  1. 与工厂模式相比,采用生成器模式创建对象的客户,需要具备更多的领域知识.

See also

Builder_Pattern