`
daojin
  • 浏览: 696344 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

可扩展性的builder模式的构建方法

 
阅读更多

http://www.cnblogs.com/happyhippy/archive/2010/09/01/1814287.html

使用builder模式的时候:

本篇文章的原因:builder模式接口非常固定,不允许改变。

当有新产品创建任务的时候。首先是想着通过参数来控制产品的变化,这样可以直接复用现有的实现。如果现有的实现无法满足需求,就需要重新实现一个concreatebuilder来满足新的需求。但是需求又是不可预见的,如何防止系统能够应对不断变化的客户需求呢?

面向业务的复杂产品一开始就知道需求基本上是不可能,特别是对于客户级别的产品来说。因此builder模式只适合建造一些与业务相关性不大的产品。例如StringBuilder,SQLInsertBuilder,AlertDialogBuilder。这些builder的共同点是,在整个系统中的功能基本上都是定死的,不需要改变的。改变的只有组装过程和组成部分。像StringBuilder,不同的组装过程可能会产生不同的结果,而AlertDialogBuilder是不同的组成部分产生的不同结果。

2.但是,如果说,非要使用客户级别的builder模式。那么下面的建议将是比较有用的:

2.1.不到万不得已不要建立builder的子类。

2.2.使用装饰者模式防止builder子类的膨胀。

2.3.参数化builder模式,保证builder的可扩展性。

2.4.用抽象工厂模式来配置系统。

 

0
0
分享到:
评论

相关推荐

    (创建型模式)Builder模式

    总的来说,Builder模式是一种强大的设计模式,它能帮助我们管理复杂对象的构建过程,同时保持代码的清晰性和可扩展性。在面对需要分步骤构建对象的场景时,Builder模式是一个值得考虑的选择。通过理解Builder模式的...

    Builder模式

    ### Builder模式:构建复杂对象的艺术 #### 概述 Builder模式是一种软件工程设计模式,...通过合理运用Builder模式,不仅可以简化代码结构,还能增强系统的可扩展性和可维护性,是软件设计中不可或缺的一种设计模式。

    builder设计模式源码

    Builder设计模式是一种软件设计模式,它允许我们分步骤构建复杂对象,通过将构造过程与对象的表示分离,使得相同的构造过程可以创建不同的表示...同时,也可以了解如何通过分离构造过程来使代码更具灵活性和可扩展性。

    C++设计模式课件11_builder_构建器.pdf

    通过将构建过程与产品表示分离,Builder模式提供了一种强大的机制来应对变化,并保持构建过程的稳定性。在使用Builder模式时,需要注意模式的具体实现细节,特别是在不同编程语言中可能存在的差异。总之,合理运用...

    BUILDER模式 C++实现

    Builder模式是一种设计模式,它属于创建型模式,主要用于复杂对象的构建。在C++中,Builder模式可以帮助我们分步骤地创建一个复杂...通过深入理解并熟练运用Builder模式,可以在实际开发中提高代码的可读性和可扩展性。

    设计模式之创建模式Builder

    建造者模式(Builder Pattern)是设计模式中的一种创建型模式,它允许我们分步骤构建复杂的对象,而无需暴露其构造过程。...通过学习和实践建造者模式,开发者可以更好地组织代码结构,提高软件的可维护性和可扩展性。

    (设计模式)Builder

    通过理解并熟练运用Builder模式,开发者能够编写出更加模块化、易于维护的代码,同时也能提升代码的可扩展性和复用性。在实际开发过程中,无论是构建数据结构还是配置对象,Builder模式都能发挥重要作用。

    生成器模式builder

    Builder模式属于创建型设计模式,它的核心思想是将对象的创建过程与对象本身分离,使得同样的构建过程可以创建不同的表示。 在Java或其他面向对象语言中,生成器模式通常包括四个主要角色:产品(Product)、建造者...

    Builder 模式

    Builder模式是一种设计模式,它属于创建型模式,主要用于构建复杂对象。这种模式允许我们通过分离对象的构造过程和表示来创建对象,使得构造过程可以更加灵活,并且能够避免在构造过程中对对象状态的直接修改。...

    创建型——Builder模式

    此外,Builder模式在Java标准库中也有广泛应用,例如`StringBuilder`和`StringBuffer`,它们用于构建字符串,提供了一种高效且可控制的字符串构建方式。 在实际开发中,Builder模式常用于创建复杂的对象,如XML文档...

    C++设计模式代码资源11_Builder.zip

    这些模式是经过实践验证的,能够提高代码的可读性、可维护性和可扩展性。"Builder"模式是设计模式中的一种,主要用于分步骤构建复杂对象,使得构造过程与表示分离,使得同样的构建过程可以创建不同的表示。本资源包...

    Builder(建造模式)

    - **可扩展性**:增加新的建造者类和产品类对原有系统影响较小,符合“开闭原则”。 - **复杂对象的构建**:对于复杂对象的构建,Builder模式可以简化创建过程,避免在构造过程中出现大量的if...else或switch语句。 ...

    23种设计模式的java实现-Builder

    设计模式是软件工程中的一种最佳实践,用于解决常见的编程问题,提高代码的可读性、可维护性和可扩展性。在Java中,23种设计模式被广泛接受并分为三大类:创建型、结构型和行为型。Builder设计模式是创建型模式之一...

    晨会分享Builder设计模式

    通过使用Builder模式,可以使得代码更加模块化,易于扩展和维护,同时也使得构造过程更加灵活,可以方便地改变对象的构造方式而不影响到客户端代码。 Builder模式有以下几个优点: 1. **解耦**:建造过程和表示分离...

    设计模式-创建者模式(Builder)

    其次,Builder模式通过封装具体的构建过程,使得构建过程更加灵活和可扩展。客户端代码因此可以更多地关注于业务逻辑本身,而不是纠缠于对象构造的细节之中。 然而,Builder模式并非没有缺点。最直接的就是它增加了...

    设计模式之Builder

    总的来说,Builder设计模式是一种非常实用的设计模式,它在复杂对象构建过程中提供了灵活性和可扩展性,同时将构造过程和表示细节进行了有效的隔离,使得代码更加易于理解和维护。通过合理使用Builder模式,开发者...

    builder模式示例代码

    在Android开发中,Builder模式可以提高代码的可读性和可维护性,特别是在处理大量可选参数时,比使用长链式构造函数或大量重载构造函数更为优雅。通过阅读和理解`builderTest`项目中的代码,你可以深入掌握Builder...

    Builder设计模式.txt

    通过将构建过程与产品表示解耦,不仅提高了代码的可读性和可维护性,还增强了系统的灵活性和扩展性。在实际开发中,尤其是在处理具有多个可选配置的对象构建时,Builder模式是一个非常好的选择。

    详解java构建者模式Builder

    详解 Java 构建者模式 Builder Java 构建者模式 Builder 是一种创建型模式,用于一步步创建一个复杂对象。...它可以隐藏内部构建细节,提供了更精细的控制对象的构建过程,提高了系统的灵活性和可扩展性。

Global site tag (gtag.js) - Google Analytics