观察者模式:同一个实例多次注册的情况
Observer pattern: case of multiple registration of the same instance
我在研究观察者,一种设计模式
observable 对象包含一个观察者列表。列表可以接受冗余的观察者实例。所以我们可以使用哈希集而不是列表来限制这种冗余。
我的问题是,如果我们允许重复注册同一个观察者实例,有没有多次注册观察者的例子?为什么同一个观察者多次注册到同一个观察者?
一个可观察对象可能会产生几种不同类型的事件通知。一位观察员可能有兴趣注册其中的一些通知。显然,您可以用不同的方式设计这个场景;但一种方法是将所有注册维护在一个列表中。
GoF 在第 296 页提到,
It's up to the observer to handle or ignore a notification.
这意味着观察者需要意识到任何潜在的冗余并做出适当的反应。
我在研究观察者,一种设计模式
observable 对象包含一个观察者列表。列表可以接受冗余的观察者实例。所以我们可以使用哈希集而不是列表来限制这种冗余。
我的问题是,如果我们允许重复注册同一个观察者实例,有没有多次注册观察者的例子?为什么同一个观察者多次注册到同一个观察者?
一个可观察对象可能会产生几种不同类型的事件通知。一位观察员可能有兴趣注册其中的一些通知。显然,您可以用不同的方式设计这个场景;但一种方法是将所有注册维护在一个列表中。
GoF 在第 296 页提到,
It's up to the observer to handle or ignore a notification.
这意味着观察者需要意识到任何潜在的冗余并做出适当的反应。