概述
GWT 是一个用于构建和优化复杂基于浏览器的应用程序的开发工具包。其目标是使开发人员能够高效地开发高性能 Web 应用程序,而无需成为浏览器怪癖、XMLHttpRequest 和 JavaScript 的专家。它是开源的,完全免费,并被全球数千名开发人员使用。
工具箱里有什么?
SDK
The GWT SDK 包含 Java API 库、编译器和开发服务器。它允许您用 Java 编写客户端应用程序,并将其部署为 JavaScript。
Eclipse 插件
The Eclipse 插件 为 GWT 和 App Engine Web 项目提供 IDE 支持。
使用 GWT 开发
编写
GWT SDK 提供了一组核心 Java API 和小部件。这些 API 允许您用 Java 编写 AJAX 应用程序,然后将源代码编译成高度优化的 JavaScript,这些 JavaScript 可以在所有浏览器上运行,包括 Android 和 iPhone 的移动浏览器。
以这种方式构建 AJAX 应用程序的效率更高,因为它在常见概念之上提供了更高层次的抽象,例如 DOM 操作和 XHR 通信。
您也不限于预定义的小部件。您可以使用浏览器的 DOM 和 JavaScript 做任何事情,包括与手动编写的 JavaScript 交互。
调试
您可以像调试桌面应用程序一样在您最喜欢的 IDE 中调试 AJAX 应用程序,也可以像编写 JavaScript 一样在您最喜欢的浏览器中调试。GWT 开发人员插件弥合了调试器中的 Java 字节码和浏览器的 JavaScript 之间的差距。
由于 GWT 开发人员插件,您无需将代码编译成 JavaScript 才能在浏览器中查看它。您可以使用您习惯的 JavaScript 编辑-刷新-查看循环,同时还可以检查变量、设置断点并使用所有其他可用于 Java 的调试器工具。由于 GWT 的开发模式现在位于浏览器本身中,因此您可以在 Java 中编码时使用 Firebug 和 Inspector 等工具。
优化
GWT 包含两个强大的工具,用于创建优化的 Web 应用程序。GWT 编译器会在您的代码库中执行全面优化,包括内联方法、删除死代码、优化字符串等等。通过在代码中设置分割点,它还可以将您的下载分割成多个 JavaScript 片段,将大型应用程序分割成多个部分以加快启动时间。
性能瓶颈不仅限于 JavaScript。浏览器布局和 CSS 的行为方式通常很奇怪,难以诊断。Speed Tracer 是 GWT 中的一个新的 Chrome 扩展程序,它允许您诊断浏览器中的性能问题。
运行
准备好部署时,GWT 会将您的 Java 源代码编译成优化的、独立的 JavaScript 文件,这些文件会自动在所有主要浏览器以及 Android 和 iPhone 的移动浏览器上运行。