在过去的 6 个月中,我注意到 GWT 的受欢迎程度急剧增加。更多证据可以在这里看到:
http://www.indeed.com/jobtrends?q=gwt&l=
有人可以解释原因吗?
我认为这基本上有三个原因:
不过,如果其中任何一个适用于 Java 商店之外,我会感到非常震惊。我根本没有看到 GWT 进入非 Java 环境,我认为他们目前的方向使得非 Java 成功的可能性更小。
我想说jsight的回答是一个很好的解释。
我看过 Flex、Rails 和 GWT。这三者都在同一个空间中,Flex 生产 Flash RIA,GWT 和 Rails 为 HTML 做同样的事情。
与 Flex 合作后,有很多值得喜欢的地方,但也有一些严重的琐碎问题,对我而言,主要的一个是将 HTML 集成到 Flex 应用程序中的困难——这不是一项简单的任务,很少有项目可以避免这种情况。
另一方面,GWT 最初是令人望而生畏的,因为它是基于 Java 的,并且与 Flex 在 Flex Builder 中提供的那种拖放编辑器不同。
但是 GWT Designer(由 Instantiations 提供)与 GWT 世界中的 Flex Builder 相当好,对于具有 Swing 技能的 Java 程序员来说,GWT 的体系结构不需要太多的了解。
更不用说大量的 Java 程序员,他们可以将 GWT 作为他们现有 Java 工具集的简单附加组件推销给他们的经理。
此外,谷歌品牌也不会受到伤害。
就企业内的可销售性而言,Java 工具总是比 Actionscript 或 Ruby on Rails 更容易销售。很难确定事情的发展方向,但我希望看到这三者的持续增长。这些天每个人都想要RIA。
我认为最近发布的 GAE,意味着 GWT RPC 可以免费使用(*),会有所帮助。
(*) 与以前一样,除非您有权访问 java servlet 容器(或使用其中一个桥接库在非 java 服务器上运行 RPC),否则您将无法托管使用 RPC 的 GWT 应用程序。
我提出了 Matt Raible 效应。请参阅:http ://raibledesigns.com/rd/entry/ajax_framework_analysis_results
说真的,我认为基于这个人的博客做出技术堆栈决策的人数非常多。
当然,有很多人太害怕或太懒(或其他什么)而无法学习与他们习惯不同的东西,所以这绝对是一个因素。如果 Java 开发人员是什么,那它就是懒惰而且便宜。GWT 在这些方面胜过许多其他 RIA 的东西。了解 Java 和 Swing 的人不想学习 JavaScript、C# (Silverlight)、ActionScript (Flex) 或 JavaFX(那东西还活着吗?),这需要他们付出一些努力。
它还对谷歌所触及的任何事物都具有僵尸般的接受度。(虽然我个人更喜欢 Apple 接触的任何东西,但至少 Google 尊重开发者的选择。)