设计模式专题系列: 设计模式
生成器模式
使用生成器模式封装一个产品的构造过程,并允许按步骤构造。
在Android中比较常见了,比如 Dialog,,另外在EffectiveJava的笔记中也有提到,就不多说了.
用途:
- 经常被用来创建组合结构.
优点:
- 将一个复杂对象的创建过程封装起来.
- 允许对象通过多个步骤来创建,并且可以改变过程(这和只有一个步骤的工厂模式不同)
- 向客户隐藏产品内部的表现
- 产品的实现可以被替换,因为客户只看到一个抽象的接口.
缺点:
- 与工厂模式相比,采用生成器模式创建对象的客户,需要具备更多的领域知识.