IOS设计模式学习(11)中介者
2013-07-03 15:09
351 查看
1 前言
面向对象的设计鼓励把行为分散到不同对象中。这种分散可能导致对象之间的相互关联。在最糟糕的情况下,所有对象都彼此了解并相互操作。但是增加的相互关联又减少了获得的益处。增加的关联似的对象很难或不能在不依赖其他对象的情况下工作。应用程序的整体行为可能难以进行任何重大修改,因为行为分布于许多对象。于是结果可能是创建越来越多的子类,以支持应用程序的任何新行为。
2 详述
2.1 简述
中介者模式用于定义一个集中的场所,对象间的交互可以在一个中介者对象中处理。其他对象不必彼此交互,因此减少了他们之间的依存关系。
用一个对象来封装一系列对象的交互方式。中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变他们之间的交互。
2.2 何时使用
(1)对象间的交互虽定义明确然而非常复杂,导致一组对象彼此相互依赖而且难以理解;
(2)因为对象引用了许多其他对象并与其通讯,导致对象难以复用;
(3)想要定制一个分布在多个类中的逻辑或行为,又不想生成太多子类。
2.3 在IOS中得应用
中介者模式不只适用于把各种对象间错综复杂的关系集中化,也适合组织两个不同视图间视图迁移。通过把一个视图加到另一个视图之上来管理视图迁移的IOS应用程序相当常见。这样一个视图需要知道第二个视图并保持对他的引用,然后是第三个,一次类推。
如果某种集中的角色来组织全部UI交通,只要代码可服用并可维护,日子就会好过得多。这一角色应该像一名以前的交通警察,在十字路口协调来自不同方向的交通。交通警察的方式提供了管理不同视图的一种送耦合方案。
3 结语
以上是所有内容,希望对大家有所帮助。
面向对象的设计鼓励把行为分散到不同对象中。这种分散可能导致对象之间的相互关联。在最糟糕的情况下,所有对象都彼此了解并相互操作。但是增加的相互关联又减少了获得的益处。增加的关联似的对象很难或不能在不依赖其他对象的情况下工作。应用程序的整体行为可能难以进行任何重大修改,因为行为分布于许多对象。于是结果可能是创建越来越多的子类,以支持应用程序的任何新行为。
2 详述
2.1 简述
中介者模式用于定义一个集中的场所,对象间的交互可以在一个中介者对象中处理。其他对象不必彼此交互,因此减少了他们之间的依存关系。
用一个对象来封装一系列对象的交互方式。中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变他们之间的交互。
2.2 何时使用
(1)对象间的交互虽定义明确然而非常复杂,导致一组对象彼此相互依赖而且难以理解;
(2)因为对象引用了许多其他对象并与其通讯,导致对象难以复用;
(3)想要定制一个分布在多个类中的逻辑或行为,又不想生成太多子类。
2.3 在IOS中得应用
中介者模式不只适用于把各种对象间错综复杂的关系集中化,也适合组织两个不同视图间视图迁移。通过把一个视图加到另一个视图之上来管理视图迁移的IOS应用程序相当常见。这样一个视图需要知道第二个视图并保持对他的引用,然后是第三个,一次类推。
如果某种集中的角色来组织全部UI交通,只要代码可服用并可维护,日子就会好过得多。这一角色应该像一名以前的交通警察,在十字路口协调来自不同方向的交通。交通警察的方式提供了管理不同视图的一种送耦合方案。
3 结语
以上是所有内容,希望对大家有所帮助。
相关文章推荐
- IOS设计模式学习(11)中介者
- iOS学习笔记—11 常见设计模式
- 设计模式学习--------11.中介者模式学习
- 设计模式学习--------11.中介者模式学习
- 【设计模式学习笔记十八】【行为模式】【中介者模式(Mediator)】
- javascript学习(11)――[设计模式]工厂模式
- iOS学习笔记-112.多线程11——单例设计模式
- IOS设计模式学习(10)外观
- IOS设计模式学习(22)代理
- IOS设计模式学习(21)享元
- IOS设计模式学习(20)命令
- iOS学习笔记(9)——中介者模式
- 设计模式深入学习IOS版(7)观察者模式
- [2015年1月][01~11][cocos2d塔防游戏学习][设计模式学习]
- 【学习笔记javascript设计模式与开发实践(模板方法模式)----11】
- IOS设计模式学习(1)设计模式初窥
- 设计模式之中介者模式的学习思考
- 步步为营 .NET 设计模式学习笔记 二十、Mediator(中介者模式)
- IOS设计模式学习(13)组合
- 【学习笔记javascript设计模式与开发实践(中介者模式)----14】