【发布时间】:2012-04-09 00:18:31
【问题描述】:
在我正在编程的游戏中,我为游戏中的所有实体使用复合对象。实体由定义小块功能(例如健康或运动)的组件对象组成。
我的问题是:
是否可以从组件发布通知,但将其父实体引用为发送通知的对象?
我很想这样做,因为向实体添加观察者更容易,而不是在实体中找到正确的组件。
有人告诉我,你永远不应该为另一个对象发布通知。
有什么好处和坏处?
【问题讨论】:
-
也许从凝聚力的角度重新提出问题会更好。也就是说,观察者是在看复合对象还是细粒度对象?例如,当生命值达到零时,您的复合对象不是更高级别的事件(死亡事件)吗?
标签: objective-c ios design-patterns