定义:
也叫做生成器模式,将一个复杂对象的构建与他的表示分离,使同样的构建过程可以创建不同的表示
优点:
- 封装性
- 建造者独立,易于扩展
- 便于控制细节风险
场景:
- 相桶方法,不同顺序产生不同结果
- 多个部件或者零件都可以装配到一个对象中,产生的效果不同
- 产品类非常复杂,调用顺序产生不同的结果
- 在对象创建中使用到系统的一些其他对象
关注的是零件类型和装配工艺的顺序
四角色
- 抽象建造者:该角色规范产品的各个组成部分,并进行抽象,一般独立于应用程序的逻辑
- 具体建造者:实现抽象建造者中定义的所有方法,并返回一个组建好的产品实例
- 产品:是建造者中复杂的的对象,一个系统中会有多于一个的产品类,这些产品并不一定有共同的接口,完全可以是不相关的
- 导演:负责安排已有模块的顺序,告诉抽象建造者开始建造
比较简单,所以就不放源码了