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

了解建造者模式

阅读更多

     了解建造者模式:

     在软件系统中,经常会遇到一个创建工作,一个复杂对象由各部分子对象用一定算法构成,由于需求改变,这个复杂对象各个部分面临剧烈变化的,但组合在一起相对稳定。

     个人理解:要去商店买吃的,商店有汉堡,可乐,鸡腿等等。顾客可以说自己的需要,告诉服务生,服务生分配给你所需要的东西。 

    //可乐 public class CocaCola { private String size; public String getSize() { return size; } public void setSize(String size) { this.size = size; } } //鸡腿 public class Drumstick { private String size; public String getSize() { return size; } public void setSize(String size) { this.size = size; } } //汉堡 public class Hamburger { private String size; public String getSize() { return size; } public void setSize(String size) { this.size = size; } }


 


服务生提供

public class Waiter { // 餐1 public static void meal1(){ new Drumstick(); new CocaCola(); }; // 餐2 public static void meal2(){ new Drumstick(); new Hamburger(); }; // 餐3 public static void meal3(){ new Hamburger(); }; }


 
顾客从服务生那得到餐

 

public class Client { //选择用餐 public void userMeal(){ Waiter.meal1(); } }

 

也可以选择用餐。

  从这个例子来看,用户可以选择不同的餐,服务生也可以任意搭配,并且该店可以改变食物的属性,例如大小,生熟,等等这就相当于小对象的算法。这并不影响顾客的需要。

   这个模式可以提高松耦合。

 

分享到:
评论

相关推荐

    [原创][创建型模式] 建造者模式的理解

    建造者模式,是一种创建型设计模式,它提供了一种分步骤构建复杂对象的方法,使得创建过程独立于使用过程。在实际编程中,这种模式...通过阅读和分析提供的图片,我们可以更深入地了解建造者模式的实现细节和应用场景。

    建造者模式.pptx

    因此,建造者模式提供了一种将构建过程和部件分开的方法,使得用户仅需指定所需的产品类型就能获得完整的对象,而不必了解其内部构造细节。 #### 模式定义 建造者模式是一种将“复杂对象的构建算法”与它的“部件...

    建造者模式学习以及与工厂模式的区别

    建造者模式(Builder Pattern)是一种创建型设计模式,它提供了一种方法来分步骤构建复杂的对象,使得构建过程和表示分离。这种模式常用于当一个对象的构建过程复杂且需要多个步骤时,或者当我们希望同一个构建过程...

    c++ 建造者模式实例

    如果我们用了建造者模式,那么用户就只需指定需要建造的类型就可以得到它们,而具体建造的过程和细节都不需要了解。 下面的例子,以求职人来公司应聘,HR需要把他的求职简历输入电脑做存档。 首先HR是不可能让求职...

    建造者模式(Builder Pattern)原理图

    建造者模式是一种创建型设计模式,用于简化复杂对象的创建过程。以下是建造者模式的关键概念和步骤: 1. **分离复杂对象的构建和表示**:建造者模式将一个复杂对象的构建过程与其最终的表示形式分离开来。这样做的...

    python建造者模式案例运行原理解析

    首先,我们要了解建造者模式的四个主要角色: 1. 产品(Product):这是最终要构建的复杂对象,它可能由多个部分组成。 2. 建造者(Builder):定义了产品的构建步骤,并返回一个完整的产品对象。它通常包含一个构建...

    建造者模式

    ### 建造者模式详解 #### 概述 建造者模式(Builder Pattern)是一种创建型设计模式,它允许在不指定具体类型的条件下逐步构建一个复杂对象。此模式的主要目标是将复杂对象的构建过程与它的组成部分解耦,从而使得...

    深入理解Android中的建造者模式

    在Android开发过程中,我发现很多安卓源代码里应用了设计模式,比较常用的有适配器模式(各种adapter),建造者模式(Alert Dialog的构建)等等。虽然我们对大多数设计模式都有所了解,但是在应用设计模式的这个方面,...

    【JavaScript源代码】怎样用Javascript实现建造者模式.docx

    ### JavaScript 实现建造者模式详解 #### 概述 建造者模式是一种常用的设计模式,它主要应用于对象的创建过程中,特别是在需要逐步构建复杂对象时。该模式的主要特点是将对象的构造过程与其组成部分相分离,使得...

    学习php设计模式 php实现建造者模式

    在建造者模式中,有几个关键的角色: 1. **抽象建造者(Builder)**:定义了一个接口,规定了产品各个部分的构建方式。在PHP示例中,这个角色可能是`Builder`接口,包含了一系列的`build`方法,如`buildPart1()`,`...

    04创建型模式1

    建造者模式是一种设计模式,属于对象创建型模式,它的主要目的是将对象的构建过程与对象的表示分离开来,使得创建复杂对象的过程可以独立于对象的使用,从而提供了一种灵活的方式来构造不同的对象表示。这种模式特别...

    【23种设计模式专题】四 建造者模式

    建造者模式是一种创建型设计模式,它将产品的构建过程与其表示分离,允许使用相同的构建过程创建不同的表示。这种模式在23种经典设计模式中占有一席之地,它提供了创建对象的一个更灵活的方式。 在建造者模式中,有...

    PHP设计模式(三)建造者模式Builder实例详解【创建型】

    建造者模式通常包括四个主要角色: 1. 抽象建造者(Builder):定义一个构建部分对象的接口,通常不直接涉及具体的产品细节。 2. 具体建造者(ConcreteBuilder):实现了抽象建造者的接口,负责构建和装配产品的各个...

    Builder(建造模式)

    - **建造者独立性**:建造者之间通常没有交互,如果多个建造者之间需要协同工作,可能会变得复杂。 在实际编程中,我们可以通过阅读Builder模式相关的源码来学习其设计思想和实现方式。例如,可以通过阅读Apache ...

    Python3实现建造者模式的示例代码

    使用建造者模式可以使复杂的过程层次明了、清晰,把对象的创建以及使用进行了解耦。实际上从代码的角度上看,是进行了多次封装,使代码结构更为规范合理,层次结构更加鲜明。 在一个复杂的对象中,需要编写大量的...

    Java Builder Pattern建造者模式详解及实例

    Java Builder Pattern,也称为建造者模式,是一种设计模式,它将复杂的对象构造过程与对象的表示分离,使得...通过了解和掌握建造者模式,开发者可以更好地处理需要多步骤构造对象的情况,提高代码的可读性和可复用性。

    设计模式试题

    工厂方法模式提供了一种简单的方式来创建对象,而建造者模式提供了一种更灵活的方式来创建对象。工厂方法模式适合用于简单的对象创建,而建造者模式适合用于复杂的对象创建。 抽象工厂模式 VS 建造者模式 抽象工厂...

    java的5种模式.docx

    在Java中,有多种设计模式,包括代理模式、模板方法模式、建造者模式等。以下是对这些模式的详细说明: 1. **代理模式(Proxy Pattern)** 代理模式的主要目的是提供对原对象的间接访问,以便在访问原对象时添加额外...

Global site tag (gtag.js) - Google Analytics