我最近刚刚学习了PureMVC框架,对 Proxy 和 Mediator 对象之间的耦合有点困惑。此页面上的链接连接到描述该框架的一些文档。(请注意,上述页面上的链接会打开 PDF。)
我研究过的 PureMVC 图表和示例经常显示 Mediator 和 Proxy 之间的直接耦合。当代理的状态更新时,而不是发送一个新的通知,中介者(它从门面检索对代理的引用)更新其状态。
这当然似乎简化了代码的逻辑,但它也直接将两个看似完全不同的组件耦合在一起。据我了解,Mediator 的目的是将事件从视图转换为 PureMVC 通知。代理旨在执行一些功能来收集数据并将其转发回视图。这两个组件似乎存在于应用程序的不同层中,也许不一定要耦合在一起。
让 Proxy 对象在状态更新时发送自己的通知不是更有意义,这些通知由 Facade 转发给感兴趣的 Mediator 吗?