定义:讲一个复杂对象的构建与它的表示相分离,使得同样的构建过程可以创建不同的表示。 将构造复杂对象的过程和组成对象的部件解耦
使用情况,满足以下条件可以考虑使用建造模式搭建框架:
1.产品有复杂的内部结构
2.系统中对此产品的需求将来可能改变产品对象的内部结构构成
3.不能将产品的内部构造完全暴漏给客户,一是为了可用性,二是为了安全因素
建造模式的组成:
1.抽象建造者角色(Builder):用来规范产品对象的哥哥组成成分的建造。一般而言,此角色独立于应用程序的业务逻辑。
2. 具体建造角色(ConvreteBuilder): 与应用紧密相关的类,在指导者的调用下创建产品实例。在实现抽象建造者提供的方法的前提下,达到完成产品组装,提供成品的功能。
3.指导者角色(Director):调用具体建造者角色以创建产品对象。指导者并没有产品类的具体知识,真正拥有产品类的具体知识的是具体建造者对象。
4.产品角色(Product):建造中的复杂对象。它要包含哪些定义组建的类,包括将这些组建装配成产品的接口。
流程:首先客户程序创建一个Director,一个Builder, 并将Builder传入Director进行配置,然后Director按照步骤调用Builder的方法创建产品,最后客户从Builder或者Director那里得到产品。
建造模式将产品的组装“外部化”到了建造者中来。
时间: 2024-10-11 22:01:18