我对gwt的理解是,gwt最初发布时包含了活动和位置的概念,以支持ui作为状态机的思想,其中每个状态都是ui的一个可预订配置。
我的理解是,gwt后来发布了他们的建议,用mvp架构模式构建gwt应用程序,以更好地分离关注点和简化单元测试。
但是,当你下载这些示例应用程序并真正查看源代码时,尽管这两种想法都有助于 client
, server
以及 shared
包结构,它们的内部工作基于不同的概念和不同的核心类型。基本上,似乎你必须在两者之间做出选择(这是真的吗?)。
现在我看到了gwtp(gwt平台)。这看起来像是活动/场所范例和mvp设计的一个坚实的融合。所以我问:如果我选择使用gwtp,在活动/场所或mvp领域下有什么我会错过的吗?换言之,通过使用gwtp,我是否限制了自己,并且被禁止使用前两项的任何最佳实践或组件?提前谢谢!
1条答案
按热度按时间eufgjt7s1#
google首先提出mvp模式来简化测试(afaik在开发googlewave时),并在googlei/o2009和2010年讨论了它。
同时(实际上,谁知道呢?在ray ryan的演讲之前,它是google的内部版本),他们提出了places的概念,作为一种类型安全、面向对象的方式在应用程序中导航,作为浏览器历史的抽象(
com.google.gwt.user.client.History
). 它只是在2009年的演讲结束时以地点服务的形式很快被提及。后来,他们提出了活动的概念(部分灵感来自android自己的活动afaict),并在gwt2.1中具体化了它(gwt2.1的第一个里程碑是在2010年7月发布的)。
这两个概念一起使用,在gwtsdk的mobilewebapp示例中得到了最好的演示。
至于gwtp,它建立在rayryan 2009年的演讲(导航场所和mvp的概念)的基础上,根本不使用活动和场所api(gwtp早于它们)。看一看http://code.google.com/p/gwt-platform/wiki/comparisonwithgwtmvp 比较gwtp与gwt的活动和场所(最初被错误地宣传为mvp)。