了解更多
为多个浏览器编写 Web 应用程序可能是一个繁琐且容易出错的过程。你可能要花费 90% 的时间来解决浏览器的怪癖。此外,构建、重用和维护大型 JavaScript 代码库和 AJAX 组件可能很困难且脆弱。
GWT (GWT) 通过允许开发者使用 Java 编程语言快速构建和维护复杂且高性能的 JavaScript 前端应用程序,减轻了这种负担。
SDK 如何工作
使用 GWT SDK,你可以使用 Java 编程语言编写 AJAX 前端,GWT 然后将其交叉编译成优化的 JavaScript,该 JavaScript 可自动在所有主要浏览器中运行。在开发过程中,你可以像使用 JavaScript 一样快速地迭代“编辑 - 刷新 - 查看”循环,并且还可以获得按行调试和单步执行 Java 代码的额外好处。准备部署时,GWT 编译器会将你的 Java 源代码编译成优化的、独立的 JavaScript 文件。
使用 Java 语言编写 AJAX 应用程序,然后编译成优化的 JavaScript
与仅在文本级别工作的 JavaScript 缩小器不同,GWT 编译器会对整个 GWT 代码库执行全面的静态分析和优化,通常会生成加载和执行速度比等效的手写 JavaScript 更快的 JavaScript。例如,GWT 编译器会安全地消除死代码,积极地修剪未使用的类、方法、字段,甚至方法参数,以确保编译后的脚本尽可能小。另一个例子:GWT 编译器会选择性地内联方法,消除方法调用的性能开销。
其他有趣的事情
最终,它只是 JavaScript
GWT SDK 提供了一组核心 Java API 和库,允许你高效地为浏览器客户端构建用户界面和逻辑。然后,你将该源代码编译成 JavaScript。最终在浏览器中运行的只是普通的 JavaScript。哦,你也可以在源代码中混合和互操作 JavaScript。
不用担心 XMLHttpRequest
GWT 可以为你处理所有客户端-服务器通信,无论你使用 JSON、XML 还是 GWT 优化的远程过程调用 (RPC) 系统。你不需要了解 XHR 调用的底层细节和挫折感。
使用你选择的后台语言
你不必在服务器上运行 Java 才能使用 GWT 构建客户端。由于 GWT 与许多标准通信协议协同工作,因此你可以轻松地进行来回通信。
根据用户配置文件优化 JavaScript 脚本下载
GWT 会创建你应用程序的单独编译版本,该版本针对特定用户的环境进行了优化。这意味着 Firefox 浏览器在法语中显示应用程序时,不需要下载其他浏览器或语言的额外代码。
在项目之间重用 UI 组件
通过组合其他小部件创建可重用的小部件,然后在面板中轻松地自动布局。想要在另一个项目中重用你的小部件吗?只需将其打包成其他人可以在 JAR 文件中使用的形式。
使用其他 JavaScript 库和原生 JavaScript 代码
你可以在 Java 源代码中混合手写 JavaScript,以与现有的 JavaScript API 交互。你可以在 Java 源文件中直接编写单独的 JavaScript 方法,甚至将 JavaScript 对象封装在 Java 类中。
轻松支持浏览器的后退按钮和历史记录
不,AJAX 应用程序不需要破坏浏览器的后退按钮。GWT 允许你通过轻松地将状态添加到浏览器的后退按钮历史记录中,使你的网站更易于使用。
国际化你的应用程序
如果你的应用程序成功,你将希望支持全球用户。提前做好良好的架构决策会有所帮助。使用 GWT,你可以轻松地创建高效的国际化应用程序和库,包括双向性。
使用你选择的开发工具提高效率
由于 GWT 使用 Java,因此你将在编写代码时捕获诸如拼写错误和类型不匹配之类的错误,而不是在运行时捕获。利用 IDE 的自动 Java 重构和代码提示/完成带来的生产力提升。现在,你可以将你所有喜欢的 Java 开发工具(Eclipse、IntelliJ、JProfiler)用于 AJAX 开发。
使用 JUnit 测试你的代码
GWT 与 JUnit 的直接集成允许你在调试器和浏览器中进行单元测试,你甚至可以对异步 RPC 进行单元测试。
它是免费的开源软件
GWT 是免费的,所有 代码 都在 Apache 2.0 许可证下提供。
准备开始了吗?
下载 SDK 并运行一个简单的 Web 应用程序。