[英]Chaining of observer/observable pattern
是否存在形成“复合”观察者/可观察者的设计模式?
我的意思是我有一个可观察的A
,它会通知听众一些变化。
每个监听器也是一个可观察的,并通知其自己的监听器(在某些动作上,它通过第一个可观察的通知触发了哪个动作)。
观察者/观察者的这种“链接”是否可以作为设计或是否有标准模式?
对于你提到的链接,我看不出任何区别。
Observer模式的目的是,当对象的状态发生变化时,它会通知感兴趣的各方(监听者/观察者)有关变化的信息,并让监听者根据状态变化做出反应。
如果听众的状态变化在设计上被其他感兴趣的人观察到,我认为没有任何理由不能使用观察者模式来发布事件。
然而,它只是另一种观察者可观察的关系。 没有特殊的“链接”发生。
有点OT:更适合称为链接的东西是:观察对象O向侦听器A发送事件E,A将事件传播到另一个侦听器B.但从逻辑上讲,它们都在监听源自O的事件。这种“链接”你可以通过使用装饰模式来完成。
您的类应该实现两个接口:observer和subject。 Challange正在将所有观察者注册到适当的对象。
您只需要在Observer
类的notify()
方法中添加notifyObservers()
( 链接到wiki )。
请注意,您可以启动无限循环通知: A
=> B
=> C
=> A
=> ...依此类推。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.