GWT - 概述

什么是 GWT?

Google Web Toolkit (GWT) 是一个用于创建 RICH Internet Applications (RIA) 的开发工具包。以下是它的一些显著特点 −

  • GWT 为开发人员提供了用 JAVA 编写客户端应用程序的选项。

  • GWT 将用 JAVA 编写的代码编译为 JavaScript 代码。

  • 用 GWT 编写的应用程序兼容跨浏览器。GWT 会自动生成适用于每种浏览器的 javascript 代码。

  • GWT 是开源的,完全免费,全球有成千上万的开发人员在使用。它根据 Apache 许可证 2.0 版获得许可。

总体而言,GWT 是一个框架,用于构建大规模、高性能的 Web 应用程序,同时保持其易于维护。

为什么要使用 GWT?

基于 Java,您可以使用 Eclipse 等 JAVA IDE 来开发 GWT 应用程序。

开发人员可以使用代码自动完成/重构/导航/项目管理以及 IDE 的所有功能。GWT 提供完整的调试功能。开发人员可以像调试 Java 应用程序一样调试客户端应用程序。

  • GWT 可轻松与 Junit 和 Maven 集成。

  • 同样基于 Java,GWT 对于 Java 开发人员来说学习难度较低。

  • GWT 生成优化的 javascript 代码,自行生成浏览器特定的 javascript 代码。

  • GWT 提供的 Widgets 库可满足应用程序中所需的大部分任务。

  • GWT 可扩展,可以创建自定义小部件以满足应用程序需求。

最重要的是,GWT 应用程序可以在所有主流浏览器和智能手机上运行,​​包括基于 Android 和 iOS 的手机/平板电脑。

GWT 的缺点

尽管 GWT 提供了许多优势,但它也存在以下缺点−

  • 不可索引 − GWT 生成的网页不会被搜索引擎索引,因为这些应用程序是动态生成的。

  • 不可降级 − 如果您的应用程序用户禁用了 Javascript,那么用户只会看到基本页面,而不会看到其他内容。

  • 对设计师不友好 − GWT 不适合喜欢使用纯 HTML 和占位符在以后插入动态内容的网页设计师。

GWT 组件

GWT 框架可分为以下三个主要部分 −

  • GWT Java 到 JavaScript 编译器 − 这是 GWT 最重要的部分,使其成为构建 RIA 的强大工具。 GWT 编译器用于将用 Java 编写的所有应用程序代码转换为 JavaScript。

  • JRE 模拟库 − Google Web Toolkit 包含一个模拟 Java 运行时库子集的库。该列表包括 java.lang、java.lang.annotation、java.math、java.io、java.sql、java.util 和 java.util.logging

  • GWT UI 构建库 − GWT 的这一部分由许多子部分组成,其中包括实际的 UI 组件、RPC 支持、历史记录管理等等。

GWT 还提供了 GWT 托管 Web 浏览器,可让您在托管模式下运行和执行 GWT 应用程序,其中您的代码在 Java 虚拟机中以 Java 形式运行,而无需编译为 JavaScript。