建造者模式

建造者模式:将系统变化的部分与稳定的部分割开,根据依赖倒置原则,细节依赖于抽象。由于需求的变化,复杂对象的建造过程是动态变化的,且包含很多细节的建造过程。将建造过程抽象出来,就是建造模式。
适用情况:构造过程、装配过程动态可能动态变化。
模式的组成:
    抽象建造者角色(Builder):为创建一个Product对象的各个部件指定抽象接口,以规范产品对象的各个组成成分的建造。一般而言,此角色规定要实现复杂对象的哪些部分的创建,并不涉及具体的对象部件的创建。
    具体建造者角色(ConcreteBuilder):
        1:实现部件规范的接口和装配过程(BuildPart创建逻辑过程,由指导者调用);
        2:与具体的产品关联,提供一个接口给客户类获取具体产品(GetResult());
    指导者(Director):调用具体建造者角色以创建产品对象的各个部分。指导者并没有涉及具体产品类的信息,真正拥有具体产品的信息是具体建造者对象。它只负责保证对象各部分完整创建或按某种顺序创建。
    产品角色(Product):建造中的复杂对象。它要包含那些定义组件的类,包括将这些组件装配成产品的接口。

    建造者模式、原型模式和工厂模式的区别:工厂模式针对创建构造不复杂的对象实例,原型模式创建的对象实例在运行中初始化完成,建造者模式介于两者中,所创建的实例需要一定的步骤,比工厂模式复杂,但是创建不需要到运行时才能确立。

builder.rar

本文纯属个人学习总结, 篇幅的大部分内容都来源于网络, 每个人的水平、层次、出发点不同,阅读者可能存在一定的误解,希望提出建议共同交流

    


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值