建造者模式
目录
定义
☎️ 用户不需要知道内部具体的构建细节。
将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。
拥有角色
Builder:抽象构建者
ConcreteBuilder:具体构建者
Director:指挥者
Product:产品角色
类图
时序图
Director
作用主要有两个
-
隔离了客户与生产过程。
-
负责控制产品的生产过程。
客户只需要知道具体构建者的类型。
适用环境
需要生产的产品对象具有复杂的对象结构,这些产品对象通常包含多个成员属性。
需要生产的产品对象的属性相互依赖,需要指定其生产顺序。
对象的生产过程独立于创建该对象的类。将创建过程封装在指挥者类中,而不是在建造者类中。
隔离负责对象的创建和使用,并使得相同的创建过程可以创建不同的产品。
实际使用场景
一辆汽车对象的生产可以使用建造者模式。
一根笔对象的创建,也可以使用建造者模式。