创建型设计模式-建造者 Builder
date
Apr 10, 2021
slug
design-pattern-builder
status
Published
tags
设计模式
summary
type
Page
简介
建造者模式可将对象的初始化转变成一步步配置的过程。如当对象的初始化时有很多可选参数,建造者模式可以定制参数实现对象的创建。好处有:
- 定制对象参数
- 针对不同参数,做不同的校验,如当设置了三角形的两个边长,设置第三个边时必须满足两边之和大于第三边的条件。
角色
- Builder 类
定义建造一个Product分几个步骤
- 具体 Builder 类
实现不同的步骤
- Director
属于快速建造某一种产品的方法,如 Director 提供了创建自动挡和手动挡汽车两种方法,创建自动挡汽车中其实是调用 setA setB,而创建自动单汽车中调用setC setD。也可以不使用 Director,直接使用 Builder 的 setA setB 去设置属性
- 要被实例化的类
初始化时可定制的参数较多,如 setA setB setC...
类图
图中的 Director 在 make 方法中封装了设置产品属性的步骤,通过传入不同的 builder 类,实现不同的实现步骤,创建不同的产品。
代码
output: