一、定义

使用多个简单对象一步一步构造一个复杂的对象,建造者模式的目的是为了分离对象的属性和创建过程(将对象的构建与表示分离)

二、适用场景

  • 使用生成器模式可避免”重叠构造函数”的出现

假设你的构造函数有很多可选参数,那么调用该函数会非常不方便,因此,你需要重载这个构造函数,新建 几个只有较少参数的简化版,但这些构造函数仍需调用主构造函数, 传递一些默认数值来替代省略掉的 参数。

  • 使用不同的组件生成不同形式的产品时(如石头房子、木头房子)

你需要创建的各种形式的产品,它们的制造过程相似且仅有细节上的差异,此时可以使用建造者模式,基本 生成接口中定义所有的制造步骤,具体的建造者将实现这些步骤来制造特定形式的产品。

  • 使用建造者构造组合树或其它复杂对象