文章目录
- 概述
- 定义
- 建造者模式原理
- 结构图
- 小结
概述
建造者模式又被称为生成器模式,是一种创建型设计模式。
和之前的单例,工厂一样,同属于创建型设计模式。
定义
建造者模式是将一个复杂对象的构建与表示分离,使得同样的构建过程可以创建不同的表示。
既然这么定义,那么它解决了什么问题呢?
建造者模式可以将部件和其组装过程分开,一步一步创建一个复杂的对象。用户只需要指定复杂对象的类型就可以得到该对象,而无须知道其内部的具体构造细节。
建造者模式原理
建造者模式包含以下四个角色:
- 抽象建造者类:这个接口规定要实现复杂对象的哪些部分的创建,并不涉及具体的部件对象的创建。
- 具体建造者类:实现 Builder 接口,完成复杂产品的各个部件的具体创建方法。在构造过程完成后,提供一个方法,返回创建好的负责产品对象。
- 产品类:要创建的复杂对象 (包含多个组成部件).
- 指挥者类:调用具体建造者来创建复杂对象的各个部分,在指导者中不涉及具体产品的信息,只负责保证对象各部分完整创建或按某种顺序创建(客户端一般只需要与指挥者进行交互)。
结构图
小结
建造者模式在现实生活中很常见,像我们的公司内部,基本上都是由一个项目经理担任指挥者,然后有一个项目,抽象出来一个项目,产品整出来一个具体项目细节,然后由不同职位的人担任具体的建造者来实现项目详细的实现。大概吧,就是这么个流程。代码就不写了,有兴趣,可以去学习学习。