Google Web Toolkit(GWT)是一個用於創建富網際網路應用程式(RIA)的開發工具包。以下是它的一些顯著特點;
GWT爲開發人員提供了用JAVA編寫客戶端應用程式的選項。
GWT將用JAVA編寫的代碼編譯成JavaScript代碼。
用GWT編寫的應用程式是跨瀏覽器兼容的。GWT自動生成適合每個瀏覽器的javascript代碼。
GWT是開源的,完全免費的,全世界成千上萬的開發人員都在使用它。它是在Apache許可版本2.0下授權的。
總的來說,GWT是一個框架來構建大規模、高性能的web應用程式,同時使它們易於維護。
Why to use GWT?
由於是基於Java的,您可以使用類似Eclipse的javaide來開發GWT應用程式。
開發人員可以使用代碼自動完成/重構/導航/項目管理和IDEs.GWT的所有特性,這些特性提供了完整的調試功能。開發人員可以像調試Java應用程式一樣調試客戶端應用程式。
GWT提供了與Junit和Maven的簡單集成。
同樣是基於Java的,GWT對於Java開發人員來說學習曲線很低。
GWT生成優化的javascript代碼,自行生成瀏覽器的特定javascript代碼。
GWT提供了Widgets庫,它提供了應用程式中所需的大部分任務。
GWT是可擴展的,可以創建自定義小部件來滿足應用程式的需要。
最重要的是,GWT應用程式可以在所有主流瀏覽器和智慧型手機上運行,包括基於Android和iOS的手機/平板電腦。
Disadvantages of GWT
儘管GWT有很多優點,但它有以下缺點;
由GWT生成的不可索引網頁不會被搜尋引擎索引,因爲這些應用程式是動態生成的。
不可降解−如果應用程式用戶禁用Javascript,則用戶將只看到基本頁,而不看到其他內容。
不是設計器友好的−GWT不適合那些喜歡使用帶有占位符的純HTML在稍後時間插入動態內容的web設計器。
The GWT Components
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 building library這部分由許多子部分組成,包括實際的UI組件、RPC支持、歷史管理等等。
GWT還提供了一個GWT託管的Web瀏覽器,它允許您在託管模式下運行和執行GWT應用程式,在這種模式下,您的代碼在Java虛擬機中作爲Java運行,而無需編譯爲JavaScript。