GWT:Google Web工具包

2,588 阅读3分钟
原文链接: hao.jobbole.com

Google Web Toolkit(简称GWT,读作/ˈɡwɪt/),是一个前端使用JavaScript,后端使用Java的AJAX framework,以Apache许可证2.0版本开放源始码。GWT通过编译器将Java代码编译成JavaScript,可让开发人员使用Java程序设计语言,快速建置与维护复杂但高性能的JavaScript前端应用程序,借此减轻开发人员负担。

最近更新版本2.7.0

主要组件

GWT的主要组件包括:

  • SDK:GWT SDK包含Java API库、编译器和开发服务器。通过SDK可用Java编写客户端应用程序并作为JavaScript部署。
  • Eclipse插件:针对Eclipse的GWT插件提供了GWT开发所需的IDE及App Engine Web项目。

使用GWT开发

编程

GWT SDK提供了一组核心Java API和Widget(小部件)。通过它们编写Java代码开发AJAX应用程序。Java代码会编译出高度优化的JavaScript,在不同浏览器中运行。此外还支持包括Android和iPhone中的移动浏览器。

通过这种方式构建AJAX应用程序,在更高的层次对类似DOM操作和XHR通讯进行了抽象,大大提高了生产率。

开发中不仅限于使用SDK中预定义的Widget。在浏览器中任何通过DOM或JavaScript可以实现的功能都能在GWT中实现,包括与自己编写的JavaScript进行交互。

调试

你可以在自己喜爱的IDE中像调试桌面应用程序那样调试AJAX应用,像编写JavaScript一样在浏览器中调试前端代码。GWT开发者插件填补了Java字节码和浏览器JavaScript之间的缺口。

多亏有了GWT开发者插件,从此不再需要把代码编译成JavaScript之后再到浏览器中查看。你可以像操作JavaScript一样编辑、刷新、查看,与此同时监视变量、设置断点、使用其它Java调试工具。因为GWT的开发进入了浏览器模式,因此可以使用像Firebug和Inspector这样的工具来调试。

优化

GWT包含了两个强大的工具用来创建和优化Web程序。GWT编译器在你的codebase(基本代码)中进行了全面的优化,包括内联方法、移除无用代码、优化字符串等。通过设置分离点,还可以将你的代码拆分成多个JavaScript代码块,对大型应用通过拆分实现快速启动。

性能瓶颈不仅限于JavaScript,浏览器中布局和CSS的奇怪表现也是难于诊断。Speed Tracer是一个新的Chrome GWT扩展,用来诊断浏览器中的性能问题。

运行

然后就剩下部署了,GWT将你的Java源代码编译成优化的、独立JavaScript文件,可以在主流浏览器中自动运行,还可以在Android和iPhone的移动版浏览器中运行。

准备好了吗?

下载SDK,开发一个小型Web应用然后运行。这样可以配合高级教程体会GWT开发的基本步骤。

官方网站:www.gwtproject.org/
开源地址:github.com/gwtproject