`
leonzhx
  • 浏览: 793592 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Builder模式学习笔记

阅读更多

 适用情况:当系统中要生成一个复杂对象,而这个复杂对象的各种零件又有不同的式样且零件的装配过程比较复杂时,希望装配过程对系统来说是透明的,变更装配顺序或装配用到的零件对系统也是透明的。同时希望不同式样零件的生产与零件的装配是分离的。

 

 解决方案:首先,有一个负责装配零件的Director,它实现了如何组装零件,并且也只有它知道需要什么零件。其次定义一个生产零件的抽象Builder,它定义了生产各种零件的接口。最后有一系列具体的Builder来实现这个抽象Builer,用于生产不同样式的零件。

   

类图:

 

 



 

  GOF中的例子:




 

   交互图:
  

 

   实际应用:比如你要设计一个汽车生产者(Director),它知道怎么生产汽车,并且知道装配顺序并且设计了汽车的零件构成。而汽车零部件由不同的厂商(Builder)生产,但每个公司都可以生产所有的零件类型,只是他们的式样不同而已。那么在这个系统中,只要递给汽车生产者的零件生产厂商变了,那生产出来的汽车样式就不同了,但汽车的结构是不变的。修改汽车生产者中的construct方法可以改变汽车的结构或生产顺序(特别是当某种零件的生产变得依赖于另一种零件时),但系统的其它code不用为之改变。

 

   与其它设计模式的比较:TBD

  • 大小: 19.2 KB
  • 大小: 45.4 KB
  • 大小: 22.2 KB
分享到:
评论
1 楼 xurichusheng 2012-01-12  
具体例子可以参照:
http://smartfool.iteye.com/blog/71175

相关推荐

    23种设计模式学习笔记及源码

    这个压缩包文件包含了23种设计模式的学习笔记和源码,旨在帮助开发者深入理解并熟练运用这些模式。以下是对每种设计模式的详细解释,以及它们在Java编程中的应用。 1. **单例模式**:确保一个类只有一个实例,并...

    设计模式学习笔记

    ### 设计模式学习笔记 #### 一、简单工厂模式 (Simple Factory) **类图与描述:** 简单工厂模式的核心在于存在一个工厂类,这个工厂类能够根据不同的输入参数返回不同的对象实例。简单工厂模式并不涉及继承关系,...

    GoF 23种设计模式学习笔记

    "GoF 23种设计模式学习笔记" 是一个深入探讨这23个经典设计模式的资源,这些模式最初由Erich Gamma、Richard Helm、Ralph Johnson和John Vlissides四位作者在1994年的著作《设计模式:可复用面向对象软件的基础》中...

    《设计模式》学习笔记

    ### 设计模式学习笔记 #### 引言 设计模式(Design Patterns)是在软件设计领域内广泛应用的一种实践指南,它提供了一系列解决常见问题的方案。设计模式可以被理解为面向对象软件设计的经验总结,是对特定面向对象...

    23中设计模式学习笔记.docx

    ### 23种设计模式学习笔记 #### 一、软件设计模式的概念与意义 **概念:** 软件设计模式(Software Design Pattern),又称设计模式,是一套被广泛采用、经过整理和分类的代码设计经验总结。它针对软件设计过程中...

    300Java设计模式部分学习笔记

    以下是一些在尚学堂300Java设计模式部分学习笔记中涉及的设计模式的知识点: 创建型模式: 创建型模式主要解决对象创建的问题,确保系统的灵活性和封装创建细节。学习笔记中提到了5种创建型模式: 1. 单例模式...

    图解java设计模式_学习笔记_java开发

    这份"图解java设计模式_学习笔记"是针对Java开发者深入理解和应用设计模式的重要资源。在这里,我们将深入探讨Java设计模式的核心概念、分类以及它们在实际开发中的应用。 设计模式分为三大类:创建型、结构型和...

    powerbuider经典学习笔记

    【PowerBuilder经典学习笔记】 PowerBuilder(PB)是一款由Sybase公司推出的强大的数据库应用程序开发工具,以其高效、灵活和易用性在企业级应用开发领域备受推崇。它遵循客户端/服务器架构,支持面向对象编程,并...

    PB学习笔记

    6. **设计模式和最佳实践**:学习笔记可能涵盖了如何在PowerBuilder中应用设计模式,如MVC(模型-视图-控制器)模式,以及如何编写高效、可维护的代码。 7. **调试和性能优化**:了解如何使用PowerBuilder的内置...

    23个设计模式图解--学习笔记

    在《23个设计模式图解--学习笔记》中,我们探讨了这些模式,以便于理解和应用到实际开发中。以下是这23个设计模式的详细说明: 1. **工厂方法**(Factory Method):定义一个用于创建对象的接口,让子类决定实例化...

    DALSA学习笔记.docx

    ### DALSA相机SDK学习笔记 #### 一、DALSA线扫相机SDK简介 DALSA线扫相机SDK是一款专为DALSA品牌相机设计的软件开发工具包。它包含了用于开发、配置和控制DALSA相机的各种资源,例如驱动程序、示例代码、API文档等...

    良葛格DesignPattern学习笔记

    ### 设计模式学习笔记知识点概览 #### 一、引言 设计模式是软件工程领域中一种非常重要的概念,它代表了一种最佳实践的方式,帮助开发者解决特定问题时能够更加高效、灵活。良葛格的《Design Pattern学习笔记》不仅...

    Java设计模式尚硅谷笔记

    在Java中,Builder模式常用于构造复杂的对象,如StringBuilder。 5. 适配器模式(Adapter):将一个类的接口转换成客户希望的另一个接口。适配器使原本不兼容的类可以一起工作。 6. 桥接模式(Bridge):将抽象...

    JAVA与模式读书笔记。

    总之,《JAVA与模式》读书笔记提供了一个学习和应用设计模式的宝贵资源,对于Java开发者来说,理解和掌握这些模式不仅能够提升编程技能,也能使他们能够设计出更高效、更易于维护的软件系统。通过不断的实践和探索,...

    台湾人写的设计模式笔记

    通过阅读这份笔记,读者不仅可以学习到设计模式的基本概念,还能了解到如何在Java环境中实际运用这些模式,提升编程技能。设计模式的学习和掌握是成为一名优秀程序员的必经之路,它们能帮助我们写出更高效、更灵活、...

    设计模式的读书总结笔记

    总之,“设计模式的读书总结笔记”是一份宝贵的资源,它可以帮助开发者系统地学习和掌握设计模式,提升软件设计的质量和效率。无论是初学者还是经验丰富的开发者,都可以从中受益匪浅。通过深入学习和实践,我们可以...

    23种面向对象设计模式

    文档中的“23种设计模式学习笔记.doc”可能包含了对这23种模式的详细解释和实例,而“设计模式之我爱我家.doc”可能从一个更生活化的角度来阐述设计模式的概念。“软件23种设计模式,超级经典的.pdf”可能是对这些...

    软件体系结构与设计模式课堂笔记.docx

    创建型模式如工厂模式(Factory)、抽象工厂模式(Abstract Factory)、单例模式(Singleton)、建造者模式(Builder)、原型模式(Prototype)和对象池模式(Object Pool Pattern)主要关注对象的创建。结构型模式...

Global site tag (gtag.js) - Google Analytics