第11章 建造者模式
建造者模式(Builder Pattern),也叫生成器模式,定义如下:
Separate the construction of a complex object from its representation so that the same construction process can create different representations.(将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。)
在建造者模式中,有如下4个角色:
- Product产品类
产品类通常实现模版方法模式。
- Builder抽象建造者
规范产品的组建,由子类具体实现。
- ConcreteBuilder具体建造者
实现抽象类定义的所有方法,并且返回一个组建好的对象。
- Director导演类
负责安排已有模块的顺序
建造者模式的优点:
- 封装性
- 建造者独立,容易扩展
- 便于控制细节风险
建造者模式的使用场景:
相同的方法,不同的执行顺序,产生不同的事件结果时;
多个部件或零件都可以装配到一个对象中,但是产生的运行结果又不相同时;
产品类中的调用顺序不同产生不同的效能时。
建造者模式的注意事项:
建造者模式关注的是零件类型和装配工艺(顺序),这是它与工厂方法模式最大不同的地方。