2

在 RobotLegs 的示例中,似乎在每个按钮/textArea 上都使用了调解器,而不是在包含这些子项的自定义组件上。这将非常耗时,不是吗?

来自 Joel Hooks InsideRia 示例

依赖注入更适用于明确的类。这意味着通过将 TextArea 扩展到我们的新 MessageView 类中,我们正在为依赖注入创建一个特定的视图组件来执行操作。如果我们的应用程序有多个用于不同目的的 TextArea,这一点很重要。通过以这种方式划分我们的类,我们清楚地定义了类的意图并允许依赖注入工具有效地完成它们的工作。

4

2 回答 2

1

不,不要调解每个子组件。您的组件应该组织成执行相关操作的组。在示例中,组件非常简单,并不反映真实应用程序的外观。

于 2010-11-22T20:17:15.267 回答
0

我使用的一个经验法则是考虑该组件是否需要与应用程序的其余部分进行任何通信,或者它是否只是整体的一部分。请记住,中介仅用作视图和应用程序之间的桥梁。

例如,如果我有一个带有表单的视图(假设是一个登录表单),我不会调解所有子组件(文本字段、按钮等),因为这将毫无意义并且会产生大量的类和运行时的对象。当我做我想的形式时,视图本身是什么?以及应用程序的其他部分应该如何处理它?当用户填写表单并单击按钮时,视图会分派一个事件(在本例中为 LoginRequestEvent),然后中介应该重新分派该事件,从而使中介非常精简。

但是随着框架的实践,你会产生这种你所持有的调解的感觉。例如,在一个应用程序中,我协调列表的每个项目渲染器,而在另一个应用程序中,我协调具有两个或三个导航内容的视图堆栈。

希望能帮助到你

于 2012-04-04T18:43:19.013 回答