Android 设计模式入门到精通之二十一:观察者模式(Observer Pattern)

观察者模式(Observer Pattern)

1. 概念

Define a one-to-many dependency between objects so that when one object changes state,all itsdependents are notified and updated automatically。定义对象间一种一对多的依赖关系,使得每当一个对象改变状态,则所有依赖于它的对象都会得到通知并被自动更新。

观察者模式是对象的行为模式,又叫发布-订阅(publish/subscribe)模式,模型-视图(moder/view)模式,源-监听器(source/listener)模式或从属者(dependent)模式。

2. 应用场景 --注册&注销监听


相关概念:监听&回调的区别:

•监听Listener:动态注册addListener() & removeListener(),维护监听ArrayList数组或列表。

•回调Callback:方法调用时,传入callback para,由执行方决定callback的触发条件。


a. 当一个抽象模型有两个方面,其中一个方面依赖于另一个方面。

b. 当对一个对象的改变需要同时改变其它对象,而不知道具体有多少个对象待改变。

c. 当一个对象必须通知其它对象,而它又不能假定其它对象是谁。换句话说,你不希望这些对象是紧密耦合的。

3. 代码实践

实现举例:多个UIs 注册&注销监听(addListener() & removeListener()) 特定的StateMananger.

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容