📅  最后修改于: 2020-10-25 04:34:44             🧑  作者: Mango
Google Web Toolkit(GWT)是用于创建RICH Internet Applications(RIA)的开发工具包。这是它的一些值得注意的功能-
GWT为开发人员提供了使用JAVA编写客户端应用程序的选项。
GWT将用Java编写的代码编译为JavaScript代码。
用GWT编写的应用程序兼容跨浏览器。 GWT会自动生成适合每个浏览器的javascript代码。
GWT是开源的,完全免费的,并且被全球成千上万的开发人员所使用。它根据Apache许可证2.0版获得许可。
总体而言,GWT是一个框架,可用于构建大规模,高性能的Web应用程序,同时又使它们易于维护。
基于Java,您可以使用Eclipse之类的JAVA IDE来开发GWT应用程序。
开发人员可以使用代码自动完成/重构/导航/项目管理以及IDE.GWT的所有功能来提供完整的调试功能。开发人员可以像调试Java应用程序一样调试客户端应用程序。
GWT提供了与Junit和Maven的轻松集成。
GWT还是基于Java的,因此对于Java开发人员来说学习曲线很低。
GWT生成优化的javascript代码,自行生成浏览器的特定javascript代码。
GWT提供的Widgets库提供了应用程序中所需的大多数任务。
GWT是可扩展的,可以创建自定义窗口小部件来满足应用程序的需求。
最重要的是,GWT应用程序可以在所有主要的浏览器和智能手机(包括基于Android和iOS的手机/平板电脑)上运行。
尽管GWT具有很多优点,但它具有以下缺点-
不可索引-GWT生成的网页不会被搜索引擎索引,因为这些应用程序是动态生成的。
不可降解-如果您的应用程序用户禁用Javascript,则该用户只会看到基本页面,仅此而已。
不适合设计者-GWT不适合那些喜欢使用带有占位符的纯HTML来在以后插入动态内容的Web设计者。
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。