【发布时间】:2011-05-13 23:36:14
【问题描述】:
假设您的应用程序(WinForms .NET 2.0 应用程序)中有多个 MVP 三元组,每个三元组负责一个责任领域。在 MVP 三元组之间协调通信的首选方式是什么?
选项 1 一个协调器对象,它“拥有”每个模型并通过订阅每个模型中的必要事件来照顾协调,然后决定在什么场景中调用什么模型方法。
担心这可能是一个“神”类。
选项 2 一个演示者“拥有”另一个演示者,当模型中发生感兴趣的事情时,演示者使用另一个演示者来推动交流。
担心演示者不应该有一个公共界面(演示者优先的方法),这打破了这一点。
我只是想知道其他人做了什么来以可扩展的 OO 方式解决这个问题。如果我添加另一个 MVP 三元组会怎样?将它融入我的协调器有多难?一定有一些很好的例子说明如何在一个 WinForms 应用中管理多个 MVP 三元组?
【问题讨论】: