何时使用GWT以及何时不使用

时间:2010-12-16 16:51:11

标签: java php gwt

我想知道是否存在GWT不适合的特定情况?例如,使用GWT重新开发Stack Overflow是否合适?

我正在开发一个具有Java Restlet API的应用程序,我正计划使用GWT(以前我只使用bog标准HTML / CSS和后端PHP代码调用API)。我想知道为什么我不应该选择这样做?

4 个答案:

答案 0 :(得分:13)

我的回答并不完整,但我相信以下子弹可能会有用。

  • GWT不应该用于主要呈现文本信息和一些图片的应用程序,即不是非常具有交互性。对于这些应用程序,GWT并没有为您带来很多好处。
  • GWT不应该被具有强大网络技能和相对较弱的Java技能的团队使用。
  • 如果您需要支持GWT官方不支持的浏览器,请不要使用GWT。例如MSIE 6。

答案 1 :(得分:4)

查看此主题GWT for big projects?

GWT是在单个页面中处理复杂操作的最佳选择。像Google wave,Google mail ...你可以轻松更新(ajax)页面的任何部分。

由于GWT是java-to-javascript编译器,用户应该等待.js文件的加载,如果你的web应用程序很大,它会导致很多问题。项目越大,javascript文件越大,用户应该等待加载.js文件的次数越多

答案 2 :(得分:3)

恕我直言如果您有一个静态的网站,如博客,新闻门户网站等,每个页面都有自己的身份并代表一个实体,并且单独请求不要单独使用GWT(您仍然可以将它与服务器端混合使用)生成的页面如FB)。

对于大多数其他网络应用,特别是如果用户登录使用您的应用或您的应用是互动的,并且没有技术问题使用GWT(如Gmail设计)。

答案 3 :(得分:1)

我建议不惜一切代价避免GWT。我有使用GWT开发大型项目的经验,这是一个噩梦,因为长期的开发圈。如果您在angularjs / react / jquery中有应用程序,则更新源代码,单击F5并重新加载它。您可以快速调试点击F12。

如果你在庞大的项目上使用GWT,你必须等待约1分钟才能编译app。然后没有好的方法来调试它。谷歌提供了特殊的浏览器插件,但它们工作不稳定,不支持最新版本的浏览器,所以我不得不降级FF。同样巨大的GWT应用程序调试需要大量的java内存,所以你必须为tomcat提供更多的内存。最后在实践中你无法避免学习js,如果你进行现代网络开发,你将不得不学习它。

更新15.05.2017:我的答案被GWT粉丝低估了,但我想注意,我的信息是最新的:1页hello world app rebuild cyrcle大约30秒,最后一个IDEA和10Gb mem SSD笔记本。我还要求在生产中使用GWT的朋友进行认真的项目:他们声称2分钟是平均重新部署时间。