游戏中的设计模式三(中介者模式)
来源:互联网 发布:女生做程序员好吗 编辑:程序博客网 时间:2024/04/29 18:33
写在前面
上篇文章讲到外观模式,在外界管理各个子系统时,使用外观模式减少与内部多个子系统模块进行交互,从而降低应用程序的复杂度。
本文介绍另外一种设计模式--------中介者模式(又称调停者模式)
当我们的多个系统模块之间会有通信,如果系统之间杂乱无章的进行通信数据交互的话,耦合性很高,不容易维护。
中介者模式就是解决这种情况,定义一个中介对象来封装系列对象之间的交互。中介者使各个对象不需要显示的相互应用,从而降低其耦合性,而且可以独立地改变他们之间的交互。
案例分析
各个子系统之间错中复杂的进行交互,使用中介者模式很好的避免了这种问题
将原先的“多对多”变化为“一对一”
模式优点
简化了对象之间的关系,将系统的各个对象之间的交互关系进行封装,将各个子系统类解耦;
提供系统的灵活性,使得各个系统对象独立而易于复用
模式缺点
由于中介者承担了较多的责任,所以当中介者被破坏后,各个系统将可能受到影响
当我们的游戏中需要添加新的系统时候,这样将要修改中介类,违背了设计原则的开闭原则
原文地址:blog.liujunliang.com.cn
阅读全文
1 0
- 游戏中的设计模式三(中介者模式)
- 设计模式--中介者模式(Mediator)
- 设计模式(7):中介者模式
- c++设计模式(中介者模式)
- 设计模式(24) - 中介者模式
- 设计模式(8):中介者模式
- 设计模式:中介者模式(Mediator)
- 设计模式:中介者模式(Mediator)
- 设计模式:中介者模式(Mediator)
- 设计模式(17)------中介者模式
- 设计模式(20)-中介者模式
- 设计模式(十四)中介者模式
- 设计模式(十四)中介者模式
- [设计模式]中介者模式(Mediator)
- 设计模式(十三)--中介者模式
- 设计模式(17)-中介者模式
- 设计模式(17)--中介者模式
- 设计模式(17)--中介者模式
- 采用nginx代理/分发http请求
- 06:空格分隔输出
- jquery内容过滤器:contains :empty :has(p) :parent
- 导入到eclipse中的项目报错 XXX cannot be resolved to a type
- Maven入门
- 游戏中的设计模式三(中介者模式)
- 【帝国CMS】灵动标签从第2条开始调取5条信息
- 三次握手四次分手有趣的解释
- Unity 连接 sqlserver
- Android中的so库
- iOS七牛云上传图片error=incorrect region, please use up-z2.qiniu.com
- Python操作Kafka爬坑
- java语言 Linux系统环境下 运行phantomjs
- HTML学习(一)