建造者模式: 将复杂对象的建造和表示分离, 使同样的建造过程可以创造出不同细节的产品.
建造者模式,听名字就应该知道和工厂模式一样,是用来创造对象的。但是建造者和工厂模式的区别就是工厂模式只关注最终的产品,它往往是简单的调用被创建者的构造函数;而建造者更关心细节, 它定义了创建一个复杂对象所需的步骤, 而创建者具体的实现类可根据具体的需求,调整创建细节。
示例:
特点:
1 建造者定义了建造产品所需的各个步骤;
2 指挥者通过调用建造者, 按既定的步骤建造对象.
抽象建造者通过把产品的生产过程分解为不同的步骤, 从而使具体建造者在具体的建造步骤上具有更对弹性. 从而创造出不同表示的产品。
举一例:
比如建造一个人: 抽象建造者把造人的过程分解为: 建造头部,驱赶, 四肢, 血液系统, 呼吸系统..... 那么不同的具体建造者可以根据客户需要, 建造出不同的人来: 有的人躯体胖, 有的人手臂长, 有的人A型血, 有的人B型血...... 这是构造函数无法提供的弹性。