GWT费用体系结构
为什么GWT SDK中的Expenses应用程序在同一个类中包含活动和视图?例如GWT费用体系结构,gwt,architecture,Gwt,Architecture,为什么GWT SDK中的Expenses应用程序在同一个类中包含活动和视图?例如com.google.gwt.sample.expenses.client.ExpenseReportList扩展了复合和实现活动 把这些分开不是最好的做法吗 更新2011.02.23: 从Google IO 2009 Ray Ryan的演讲来看,拥有MVP的原因 能够在演示者上轻松地进行单元测试,而无需 从视图中包含代码。因为费用应用程序合并在一起了 视图和演示者,执行隔离控制器的任务 考试变得很难 我想是的。因为
com.google.gwt.sample.expenses.client.ExpenseReportList扩展了复合
和实现活动
把这些分开不是最好的做法吗
更新2011.02.23:
从Google IO 2009 Ray Ryan的演讲来看,拥有MVP的原因
能够在演示者上轻松地进行单元测试,而无需
从视图中包含代码。因为费用应用程序合并在一起了
视图和演示者,执行隔离控制器的任务
考试变得很难
我想是的。因为视图是一个“重”对象,应该被缓存,并且可以为该视图的每个请求创建活动。这还有一个优点,即保存在“活动”中的状态会随每个请求一起刷新。如果我不想重用视图及其组件,我也会这样做 ROO生成的脚手架有点不同。其中使用了依赖项注入。
应用位置和活动最佳实践时,我最大的问题是理解如何完全重用视图,因为有一些组件(如SuggestBox和CellBrowser)在模型的构造函数中作为参数。我发现的解决方法是为那些UI类使用某种适配器模式。我敢打赌,他们使用一个类进行活动和UI来克服这个问题。还想听听使用这种被认为不适用于可重用视图的UI类的最佳实践是什么 有人吗?有什么想法吗?提前谢谢!你怎么看待费用的可测试性(见更新2011.02.23)?我刚刚看到ROO生成的脚手架。它将视图类与活动类分开。你能帮我理解为什么两个应用程序有两种不同的做法吗?下面哪一个最好?谢谢你的提示?提前谢谢你!