将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。
建造者模式将一个复杂对象的生成责任做了很好的分配,它把构造过程放到指挥者的方法中 ,把装配过程放到具体建造者类中 。
当一个复杂对象的创建需要很多步骤的时候,这些步骤在不同的条件下是变化的,通过不同的Builder创建“不同风格”的复杂对象。
Builder模式就是把复杂对象的创建和部件的创建分别开来,对象的创建用Director类来表示,而部件的创建用Builder类来表示。
Builder模式和Abstract Factory模式的区别:
1、Builder模式是为了产生单个复杂对象;Abstract Factory模式是为了产生一系列不同风格的对象。
2、Builder模式在最后一步返回对象;Abstract Factory模式中的系列对象是立即返回的。