GWT如何比较(或可以比较)与
javascript框架,如backbone.js,angularJS,Ember,JQuery等?他们的目标是完成同样的工作,使他们成为竞争对手,还是可以一起使用?
解决方法
是的,不是.虽然GWT的编译器本质上是一个Java-to-
Javascript转换器,但它提供的好处远远超过我从任何流行的JS库中看到的任何东西.
由于基于GWT的应用程序是用Java编写的,因此它们获得了许多好处,例如强类型和非常容易重构.如果某些更改会影响另一个类,您会立即知道它.对于那些Java不擅长的东西,你总是可以使用Javascript来处理JSNI的情况.谷歌还为Eclipse提供了一个很好的插件,它允许你调试你的代码,就像我从未见过的JS库一样.这样做的另一个好处是,您可以使用相同的语言编写客户端和服务器端代码,而GWT可以将它们捆绑在一起.
自动生成多个排列也有好处. GWT会在最常用的浏览器上创建一个代码的副本,其外观和行为相同(尽可能).如果没有额外的重量,你的客户都会看到同样的东西.您不负责编写无穷无尽的代码行来处理那些一直困扰Web开发人员的无数浏览器特性.虽然在某种程度上这些东西是由一些JS库处理的,但GWT使它完全不费吹灰之力.
根据我的经验,你提到的库本身就很好,但是根本无法提供GWT开箱即用的强大的调试,可移植性,可扩展性,可维护性和可移植性. GWT并不是真的可以与其他库一起工作,而是让你有能力(大多数)在没有他们帮助的情况下完成这些库的所有工作. (当然,这并不是说你不能在任何你想要的地方使用其他库……如果你真的觉得有必要的话,你可以这样做.)
所以在我看来,不,没有竞争. GWT是这个舞台上具象的重量级冠军.