`
jsczxy2
  • 浏览: 1275409 次
  • 性别: Icon_minigender_1
  • 来自: 常州
文章分类
社区版块
存档分类
最新评论

学习设计模式之Mediator模式(中介者模式)

阅读更多

这里就直接引用一些某位同志的文章:

设计模式 写道
     通常 ,面向对象的软件开发要求尽可能细致地分配,从而使每 个对象都能够独立完成自己的任务。Observer模式通过尽可能缩小一个对象应对其他对象承担的责任范围来支持这种责任分配。而singleton模式 将责任集中于其他对象都可以访问和复用的某个特定对象中。与singleton模式类似的是,中介者模式也对责任进行了集中,不过这种模式只是对某个特定 对象集合的责任进行集中,而不是对整个系统的其他所有对象的责任进行集中。

如果对象群组中的交互错综复杂,而每个对象都需要了解本集合中的其他每个对象的情况,那么这个时候采用一个核心机构来负责控制它们的交互将非常有用,当这些相关对象之间的交互独立于对象的其他行为的时候,对责任进行集中也很有用。

 

Mediator模式的意图就是定义一个对象,该对象将对象集合之间的交互封装起来。利用该模式可以降低对象之间的耦合程序,避免对象之间的显式引用,还可以让对象间的交互独立变化。

在我们应用MVC设计模式的时候我们同时也可以应用中介者模模式。

MVC就是模型-视图-控制器这三个对象。而模式要与视图分开,所以我们可以把控制器当作中介者来接收视图的请求,并把处理业务逻辑交给模式

具体代码就是模型、视图对控制器的显式引用,而控制器引用这两个对象,这里就不写喽

 

小结:

    中介者模式可以降低对象之间的耦合程序,避免了相关对象之间的显式引。中介者模式广泛应用于GUI应用程序的开发过程,特别是游戏开发的时候。借助这个模式,可以不必直接管理组件之间的复杂的交互。

    在构造GUI的时候,Java会引导我们使用中介者模式,但它并不要求我们一定要把中介逻辑移出应用程序类。不过,这样做可以简化我们的代码。中介者类可专门用于处理对象间的交互,而应用程序类专门负责创建组件。

    引入中介者对象还有其他的优点。例如,我们可以使用中介者对象集中负责维护对象模型的关系完整性。每当需要封装对象间的交互方式的时候,我们都可以应用中介者模式。

分享到:
评论

相关推荐

    设计模式之中介者模式(Mediator)

    在软件工程中,设计模式是一种被广泛采用的解决常见问题的经验总结,其中中介者模式是结构型设计模式的一种。它的主要目标是降低对象之间的耦合度,使得对象之间的关系更加清晰,同时也提高了代码的可维护性和可扩展...

    设计模式之中介者模式(Mediator Pattern)

    **设计模式之中介者模式(Mediator Pattern)** 在软件工程中,设计模式是一种解决常见问题的经验总结,它提供了一种可复用的解决方案。中介者模式是行为设计模式之一,其主要目的是降低多个对象之间的复杂性,通过...

    C#面向对象设计模式纵横谈(17):(行为型模式) Mediator 中介者模式

    标题和描述均提到了"C#面向对象设计模式纵横谈(17):(行为型模式) Mediator 中介者模式",这明确指向了一个特定的设计模式——中介者模式(Mediator Pattern),并且是在C#语言环境下的应用。下面将详细阐述这一设计...

    (行为型模式) Mediator 中介者模式

    C#面向对象设计模式 (行为型模式) Mediator 中介者模式 视频讲座下载

    设计模式 Mediator 中介者 c++

    中介者模式的完整代码。 程序默认使用vs开发。其他开发工具可能需要做少许调整。

    中介者模式(mediator)

    **中介者模式(Mediator)**是一种设计模式,属于行为设计模式范畴,它定义了对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都会得到通知并被自动更新。在软件工程中,中介者模式常...

    C++设计模式课件17_Mediator_中介者.pdf

    ### C++设计模式之Mediator(中介者)详解 #### 一、引言 在软件开发过程中,随着系统的复杂度逐渐增加,各个组件之间的交互变得越来越频繁,这不仅增加了系统的耦合度,还使得系统维护变得困难重重。为了解决这一...

    中介者模式(Mediator Pattern)原理图

    中介者模式(Mediator Pattern)是一种行为型设计模式,用于减少对象之间的直接相互依赖,使得对象间的交互通过一个中介者对象来进行协调。在中介者模式中,对象之间不再直接相互调用,而是通过中介者对象来传递消息...

    设计模式专题之(十七)中介者模式---设计模式中介者模式示例代码(python--c++)

    **中介者模式**是软件设计模式中的一种结构型模式,它的主要目的是降低多个对象之间的复杂交互,通过引入一个中介对象来统一这些交互。在实际应用中,当对象间的交互变得日益复杂,导致类与类之间的关系过于紧密时,...

    JAVA设计模式chm文档

    创建模式: 设计模式之Factory 设计模式之Prototype(原型) 设计模式之Builder 设计模式之Singleton(单态) 结构模式: ...设计模式之Mediator(中介者) 设计模式之Interpreter(解释器) 设计模式之Visitor

    C#面向对象设计模式纵横谈(17):(行为型模式) Mediator 中介者模式 (Level 300)

    **中介者模式(Mediator Pattern)**是一种行为设计模式,其主要目的是降低多个对象之间的通信复杂性,将这些对象的直接交互转化为与一个中心对象——中介者的交互。在C#中,中介者模式的应用能够有效地减少类之间的...

    mediator模式

    中介者模式是一种行为设计模式,它的主要目标是减少对象之间的耦合性,通过引入一个中介对象来协调多个对象之间的交互。在传统的多对象交互场景中,对象之间可能存在复杂的依赖关系,这会导致代码难以理解和维护。...

    设计模式 - 中介者模式(C++实例)

    **中介者模式(Mediator Pattern)**是一种行为设计模式,它定义了一个用来封装一系列对象交互的接口。在软件工程中,当多个对象之间存在复杂的相互依赖关系时,这种模式可以帮助我们降低系统的耦合度,使得各个对象...

    设计模式文档 chm

    设计模式参考文档 创建模式: 设计模式之Factory 设计模式之Prototype(原型) 设计模式之Builder 设计模式之Singleton(单态) ...设计模式之Mediator(中介者) 设计模式之Interpreter(解释器) 设计模式之Visitor

    设计模式之中介者模式

    **中介者模式**是软件设计模式中的一种结构型模式,它的主要目的是降低多个对象之间的复杂交互,通过引入一个中介对象来统一这些交互。在实际的软件开发中,当我们发现类与类之间出现过多的直接相互依赖时,可以考虑...

    java设计模式之中介者模式

    中介者模式是一种行为设计模式,它用于简化多个对象之间的交互,通过引入一个中介对象来解耦原本直接相互作用的对象。在Java编程中,这种模式尤其有用,因为它可以帮助我们减少类之间的耦合,提高代码的可读性和可...

    设计模式 - 中介者模式

    中介者模式是一种行为设计模式,它用于减少多个对象之间的复杂交互,将这些对象通过一个共同的对象——中介者联系起来,使得各对象之间不再直接引用,而是通过中介者进行通信。这种模式降低了对象间的耦合度,提高了...

    java常用设计模式-中介者模式

    中介者模式(Mediator Pattern)是一种行为设计模式,它允许对象之间通过中介者对象进行通信,从而避免对象之间的直接耦合。中介者模式将对象之间的复杂关系转化为中介者和对象之间的简单关系,从而提高了系统的灵活...

    C#设计模式之中介者模式小例子

    中介者模式是一种行为设计模式,它的主要目的是降低多个对象之间的耦合度,使得这些对象不必互相了解彼此的实现细节,而是通过一个中介对象进行通信。在C#中,我们可以使用类或接口来实现这个中介者。这种模式的核心...

    设计模式之中介模式Java实现版本

    **设计模式之中介模式——Java实现版本** 设计模式是软件工程中的一种最佳实践,它提供了解决常见问题的标准模板。中介模式(Mediator Pattern)属于行为设计模式,它旨在降低多个对象之间的复杂交互,通过引入一个...

Global site tag (gtag.js) - Google Analytics