GWT适用于大规模应用

时间:2012-04-04 10:35:32

标签: model-view-controller gwt java-ee smartgwt

我听说Google Web Toolkit对于超过5页和共同布局的网站来说并不是那么好用。真的吗?我们至少有100个子页面和CSS中定义的通用布局。今天使用的是PHP,但我们将转向Java前端Spring MVC或GWT。我们正在使用som jQuery AJAX和其他jQuery组件,如jqGrid。我们还有一些.swf电影和融合图表。选择Spring和GWT是一个不错的选择,还是带有jQuery库的Spring MVC对我们来说是更好的选择?

5 个答案:

答案 0 :(得分:5)

现在不是这样。早期的GWT版本确实存在一些可伸缩性问题(例如IE中的JS代码大小问题 - http://code.google.com/p/google-web-toolkit/issues/detail?id=1440),但是自从GWT 2.0以来,你没有任何限制。

此外,最新的GWT版本支持将项目拆分为可能在需要时动态加载的部分的功能。请参阅https://developers.google.com/web-toolkit/doc/latest/DevGuideCodeSplitting了解其工作原理。

还要考虑到,由于Spring是Java,因此您可以在服务器端和客户端之间共享类。而且Java在IDE中有很好的支持 - 所有类型的重构都可以使用(如果你使用jQuery,那就不太方便了。)

所以Spring + GWT看起来更可取。

答案 1 :(得分:3)

GWT不是一个从头开始构建任何webapp的通用框架。当你在客户端有很多复杂的逻辑时,它非常有用(图像编辑,实时协作,图表绘制,游戏,复杂的报表构建等)。但所有这一切都可以在没有GWT的情况下完成。 GWT可在以下情况下使用:

  • 你的团队讨厌/不喜欢JS(并且无法用JS构建任何复杂的东西,因为他们讨厌JS)
  • 您的团队对Java非常有经验
  • 您的团队了解所有与浏览器相关的内容(HTTP,JS,DOM,CSS等)
  • 在这个项目中,客户端会运行很多逻辑

我见过很多完全用GWT构建的大项目。其中一些人不应该使用GWT,因为他们没有理由以这种方式使用它。对于大多数项目来说,只在部分应用程序中使用GWT就足够了。

选择取决于您的团队和您正在进行的项目。如果您的团队无法真正看到GWT将为项目带来哪些好处,那么您就不应该使用GWT。

答案 2 :(得分:1)

我们的企业级应用程序使用两者,我们对结果非常满意。 GWT是一个功能强大的工具包,可将开发时间缩短几个数量级。也就是说,仍有一些东西,GWT要么处理不好,要么只是普通不适合(这没关系......这就是为什么Spring MVC住在附近)。我们有GWT-RPC直接点击Spring服务,它工作得非常好。

我们的项目虽然是真正的网络应用,但不是网站。我们使用跨越所有“页面”的统一设计(使用DockLayoutPanel并仅交换center使这非常容易)。

IMO,无论谁告诉你GWT不利于众多“页面”的一致设计,这是坚果......

答案 3 :(得分:0)

我认为任何关于GWT(或任何其他方法)将开发时间降低一个数量级的断言已经被Frederic Brooks揭穿,当时垫肩和Jan Hammer的合成器很时髦:http://en.wikipedia.org/wiki/No_Silver_Bullet。 / p>

但严重的是,如果你是一家PHP商店,那么转向100%Java将是一项巨大的投资,而且不能掉以轻心。

答案 4 :(得分:0)

根据我对GWT的经验,我唯一不好的经验是由于很多排列导致GWT编译速度缓慢。我们的应用程序支持超过20种语言,在浏览器特定结果中增加了6个,排列为120,这被证明性能非常糟糕。

但这不是一个真正的错误问题,因为你将主要使用开发模式,即时代码更新,你可以使用减少浏览器和语言集的特殊编译单元(甚至一种语言和一个浏览器=&gt ;如果你愿意,可以使用一种排列方式。)

所以在我的情况下,使用Jenkins,我们每晚都会制作大量的目标,在QA平台上进行部署,以便QA团队测试每种浏览器语言组合。在每次提交时,在开发验证平台上部署了简化版本(在我们的示例中为1个浏览器和2种语言)。

GWT绝对是大型应用的绝佳工具。 ;)

相关问题