定义 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示
类图
优点
1. 封装性 使用建造者模式可使客户端不必知道产品内部组成的细节
2. 建造者独立,容易扩展
3. 便于控制细节风险 由于具体的建造者是独立的,因此可对建造过程逐步细化,而不对其它模块产生影响
使用场景
1. 相同的方法,不同的执行顺序,产生不同的事件结果时
2. 多个部件或零件,都可以装配到一个对象中,但产生的运行结果又不相同时
3. 产品类非常复杂,或者产品类中的调用顺序不同产生不同的效能
注意事项
建造者模式与工厂模式虽同为创建类模式,但注重点不同,建造者模式最重要的功能是基本方法的调用顺序安排,即这些基本方法已经实现了,只是零件的装配,顺序不同产生的对象也不同,而工厂方法则重点是创建,组装顺序不是它关心的