【发布时间】:2012-04-03 12:28:41
【问题描述】:
在阅读有关观察者模式的文章时,我在观察者模式的责任下遇到了以下几点
Observer 对象是完全独立的,它们不知道其他 Observers 的存在。因此,Observer 对象可以在通知所有 Observer 之前更改 Subject 的状态(在 Update 方法中)。这可能会导致状态不一致,并且状态更改通知将会丢失。
- 为什么观察者会改变主题?不是应该通知观察者更改主题而不是自行更改主题吗?
如果可以的话
- 请通过示例告诉我
- 还要说明为什么主体不能限制自己允许任何观察者在更早的更改通知所有观察者之前对其进行更改?
【问题讨论】:
标签: design-patterns