23种设计模式 VOL.5: 建造者模式
思想: 抽象类制定建造流程, 实现类实现建造流程, 再由指挥者根据建造流程/改变建造流程顺序得到产品;
注意: 建造者模式不适用于建造流程差别过大的产品;
- 建造者四个角色
- Product 产品
- Builder 抽象建造者(制定产品建造流程)
- ConcreteBuilder 具体建造者(实现抽象建造者)
- Director 指挥者(指挥者调度具体的建造流程/改变建造流程顺序得到产品)
- 盖房子案例
- 未使用建造模式(房子产品与建造流程未解耦, 需要指挥者操作具体流程)
![]()
![]()
- 使用建造者
![]()
![]()
![]()
- Java中用到的地方
- StringBuilder/StringBuffer
![]()