Jquery GWT是否仍然适用于新项目?

Jquery GWT是否仍然适用于新项目?,jquery,gwt,extjs,gxt,gquery,Jquery,Gwt,Extjs,Gxt,Gquery,这个问题可能已经过时了(作为它的答案)。和其他相关的问题也可能是过时的。那么,让我们更新一下关于GWT与新项目的相关性 GWT如今更加成熟了 自2009年问答以来,GWT不断发展,一些JS框架在Java中可用: 对于jQuery(gQuery) 对于ExtJS(以前的ExtGWT) 已取代 。。。当然还有更多。。。(请随意添加) 此外,Java代码还可以转换为独立的JS库: 但是低级别的JS框架可能就足够了 但我读的越多,我就越看到web开发人员建议不要使用GWT,直接使用JS框架(,JS框

这个问题可能已经过时了(作为它的答案)。和其他相关的问题也可能是过时的。那么,让我们更新一下关于GWT与新项目的相关性

GWT如今更加成熟了

自2009年问答以来,GWT不断发展,一些JS框架在Java中可用:

  • 对于jQuery(gQuery)
  • 对于ExtJS(以前的ExtGWT)
  • 已取代
  • 。。。当然还有更多。。。(请随意添加)
此外,Java代码还可以转换为独立的JS库:

但是低级别的JS框架可能就足够了

但我读的越多,我就越看到web开发人员建议不要使用GWT,直接使用JS框架(,JS框架的IDE插件…)

生产力

然而,我喜欢使用相同的IDE(Eclipse、Netbeans、IntelliJ idea…)进行开发和调试的想法。我想我会更有效率。。。我还应该考虑文档和社区(论坛对这个问题的反应)

问题

  • 对于什么样的2014年新项目GWT应该(或不应该)考虑
  • 对于简单的AJAX web应用程序开发和部署,是否有与GWT相关的替代方案
  • 目前的模式和趋势是什么
  • 我的具体案例

    我刚刚完成了一个基于Python3(
    http.server.HTTPServer
    )调用(POST)
    bash
    脚本(用C++进行一些处理)并检索JSON数据的POC(内部网web应用程序)。网页中的一些JS(无框架)用于渲染。所以我想知道下一次迭代的最佳选择

    但请回答关于其他案例的这个问题。我更喜欢对更多人有用的一般性问题/答案


    2015年10月更新


    GWT看起来不太活跃,因为自11个月以来没有新版本。但在过去直到。这项活动仍然十分活跃。此外,GWT是可扩展的,新特性可以来自GWT库,而不需要新的GWT框架版本。请参见示例,其中有相应的发布周期。与此同时,趋势是到处使用Node.js!在新项目中采用GWT实际上取决于开发人员的技能/动机和项目生命周期(营业额/培训/维护)。其他一些标准,如可用源代码的重用和上市时间也可以考虑。。。请参阅下面的优秀答案。

    对于第1点,我可以给您一些我将使用的标准:

    当使用基于JavaScript的框架时,您通常在代码的初始创建过程中非常快。根据我的经验,当涉及到维护(bug修复、新特性、重构)时,您的速度要慢得多,因为工具支持不如静态类型语言好。所以对于更大或长期运行的项目,我总是选择GWT,因为Java和它的编译器检查/生态系统/工具。我认为随着时间的推移,您将受益于开发中更好的效率和可伸缩性,因为您不会因为动态键入而遇到奇怪的问题。 对于寿命不会太长或不需要大规模重构的小型项目,JavaScript框架可以大大提高开发速度

    在目标平台的上下文中调试需求也是我的一个标准。调试GWT代码非常好,只要您有DevMode支持的浏览器,或者至少可以与新的基于源映射的SuperDevMode一起使用。例如,MacOS X上的Safari不受支持。对于移动设备,您可以在Android Chrome上远程调试JavaScript,但据我所知,这对于GWT是不可能的

    我的另一个标准是团队规模和离职率。基于Java的工具(IDE、代码质量检查器等)帮助开发人员,尤其是新开发人员浏览其他开发人员的代码。对于其他静态类型的语言也是如此,但您要求使用GWT/Java

    下一个问题是堆栈问题。。。如果在服务器端使用servlet容器,GWT可以轻松解决客户端和远程通信部分。将它与成熟的Java企业技术(JPA、EJB、Spring框架等)结合起来也很容易。如果你需要/想要堆叠,这是一个很大的优势。 如果您在服务器端使用的是没有JVM的polyglot(如上所述),那么这个版本不适合您

    当然,GWT和JavaScript框架都有更多的标准

    最大的问题是偏好。JavaScript有非常好的概念(例如闭包),但由于它是动态类型,因此也是一种风险。你喜欢哪一个

    关于第2点:

    我不确定是否有真正的GWT替代品提供类似的特性和工具。大多数其他框架只关注一个方面(小部件、优化、数据绑定、远程通信、浏览器支持、I18n等等)。这并不意味着其他框架不好,但您通常需要不同框架的组合来获得GWT提供的功能

    关于第3点:

    • 我肯定会看看TypeScript,因为它改进了类型和与JavaScript的互操作性
    • 就我所记得的,Dart也有类似的目标
    • evergreen是JQuery,但根据您的需要,有好的替代方案。但这是非常主观的
    • 对于widget,Twitter Bootstrap()很好,如果它是一种适合您的方式。甚至还有GWT版本的()

      • 斯蒂芬的回答很好。我开始把它作为对他的评论输入,但发现我输入的内容超出了我的预期,所以将其作为一个单独的答案。不是为了得分

        我只想补充一点我的主观观点。事实上,大多数开发人员都是所谓的后端开发人员,没有任何知识、经验,最重要的是,他们希望开发web前端。美国IT市场的现实是,大多数人更喜欢Java