设计模式4——建造者模式(创建型模式)

今天突击一个新的创建型设计模式:建造者模式

1、建造者模式的应用场景:

工作中经常遇到构建过程很复杂的对象,这些对象内部构建间的建造顺序通常是稳定的,但对象内部的构建通常面临着复杂的变化。

此时可以将这类对象的建造组装分别抽象出来,分别用建造类和组装类表示,实现对象部件的建造和组装的分离,达到简化构建过程的目的。

2、一种场景应用

上面的 UML 图取自《大话设计模式》,用于帮助大家理解。

如图中所示,一个 Person 建造可以分为肢体的建造和组装。肢体的建造抽象成 PersonBuilder 类,肢体的组装抽象成了PersonDirector 类。使用时,不同的 PersonBuilder 分别去定义不同的肢体建造过程,最后通过 PersonDirector 类实现肢体的组装。

3、建造者模式的结构图:

下面给出建造者模式的结构图:

上图中,Builder是为了创建一个Product对象的各个部件指定的抽象接口。

ConcreteBuilder实现了Builder接口,定义了各个部件如何构造

Director 用于定义Product的各个部件如何组装、装配,Director的construct()接口中会按照一定的规则调用ConcreteBuilder中的buildPart()。

建造者模式将建造代码和表示代码分离,同时将部件的构造组装代码分离。

猜你喜欢

转载自blog.csdn.net/ding3106/article/details/81366907