Skip to content

Latest commit

 

History

History
34 lines (23 loc) · 815 Bytes

File metadata and controls

34 lines (23 loc) · 815 Bytes

建造者模式 (Builder Pattern)

定义

将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。

类图

// 类图内容

适用场景

  • 需要生成的对象具有复杂的内部结构
  • 需要生成的对象内部属性本身相互依赖
  • 当初始化一个对象特别复杂,参数众多,且很多参数都具有默认值时

优缺点

优点

  • 封装性好,构建和表示分离
  • 扩展性好,各个具体的建造者相互独立,有利于系统的解耦
  • 客户端不必知道产品内部组成的细节,将产品本身与产品的创建过程解耦

缺点

  • 会产生多余的Builder对象以及Director对象,消耗内存
  • 对象的构建过程暴露

代码实现

// 示例代码