建造者模式 Builder
将复杂对象的构建和表示分离开来
允许用相同的步骤创建不同的 representations
创建者模式是用于创造复杂对象的 step by step approach
用户可以每一步基于具体的类型和内容构建复杂的对象
但是仍然不需要知道更具体的内部细节
模式结构
- Builder(抽象)
- 扩展 Builder
- Director
- Product
- 用户不需要知道产品内部组合的细节,将产品和产品创建过程解耦,因此相同的创建过程可以用于不同的产品对象
- 增加或者替换新的扩展 builder 很方便,而且符合开闭原则
- 更好地控制产品创建过程
缺点