美文网首页
【设计模式】- 建造者模式

【设计模式】- 建造者模式

作者: DoubleFooker | 来源:发表于2020-03-09 21:21 被阅读0次

    定义:通过封装对象的创建过程将对象的创建与使用分离开来。便于类的解耦,但同时带来的多余的builder对象,对象的修改也要修改builder类。

    建造者模式对象结构

    • Director:调用具体建造者来创建复杂对象的各个部分,在指导者中不涉及具体产品的信息,只负责保证对象各部分完整创建或按某种顺序创建。
    • Builder:给出一个抽象接口,以规范产品对象的各个组成成分的建造。这个接口规定要实现复杂对象的哪些部分的创建,并不涉及具体的对象部件的创建。
    • ConcreteBuilder:实现Builder接口,针对不同的商业逻辑,具体化复杂对象的各部分的创建。 在建造过程完成后,提供产品的实例。
    • Product:要创建的复杂对象。

    建造者模式与工厂模式区别

    • 工厂模式只负责对象的创建,不关注创建过程
    • 建造者模式控制对象属性的创建或创建顺序
    • 工厂模式创建的对象都一样,建造者模式通过创建过程可能创建不一样的对象

    常见的使用builder模式的实现:

    • Mybatis中配置解析过程XMLConfigBuilder
    • OkHttp中Request对象建造者模式
    • GsonBuilder建造者模式
    • 其他流行框架

    相关文章

      网友评论

          本文标题:【设计模式】- 建造者模式

          本文链接:https://www.haomeiwen.com/subject/vplmdhtx.html