谷歌Web工具包(GWT)是一個開發工具包來建立富網際網路應用程式(RIA)。
GWT提供了在JAVA編寫用戶端應用程式開發選項。
GWT編譯JAVA寫的程式碼到JavaScript程式碼。
在GWT編寫的應用是跨瀏覽器相容。 GWT會自動生成適合每個瀏覽器的javascript程式碼。
GWT是開源的,完全免費的,數千名世界各地的開發人員所使用。它是根據Apache許可證2.0版授權。
總體來說,GWT是一個框架,以建設大型和高效能的Web應用程式,同時保持他們易於維護。
作為基於Java,可以使用的JavaIDE如Eclipse開發GWT應用程式。開發可以使用程式碼auto-complete/refactoring/navigation/project 管理和整合開發環境的所有功能。
GWT提供全面的偵錯功能。只是作為一個Java應用程式開發人員可以偵錯用戶端應用程式。
同樣是基於Java的,GWT具有低為Java開發人員的學習曲線。
GWT生成優化的JavaScript程式碼,自行產生特定瀏覽器的javascript程式碼。
GWT提供小工具庫提供的大多數應用程式所需的任務。
GWT是可延伸的,可以建立自定義部件以滿足應用需求。
在一切之上,GWT應用程式可以執行在所有主要的瀏覽器和智慧手機,包括Android和iOS手機/平板電腦。
雖然GWT有很多加分點,但同時我們應該考慮以下幾點:
不可索引 : 由GWT生成的Web頁面將不會被搜尋引擎收錄,因為這些應用程式是動態生成的。
不可降解: 如果您的應用程式的使用者禁用JavaScript,然後使用者只會看到的基本頁面,僅此而已。
設計師不友好: GWT是不適合那些喜歡在稍後的時間點插入動態內容的預留位置使用純HTML的網頁設計師。
GWT框架可分為以下三個主要部分:
GWT Java到JavaScript編譯器: GWT的是最重要的部分,這使它成為一個強大的工具,構建RIA。 GWT編譯器是用來翻譯用Java編寫的應用程式程式碼轉換成JavaScript。
JRE模擬庫: 谷歌Web工具包包括一個庫,它模擬的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應用程式在託管模式下,編譯為JavaScript程式碼執行在Java虛擬機器。