GWT 是什麼?


GWT是什麼?

  • 谷歌Web工具包(GWT)是一個開發工具包來建立富網際網路應用程式(RIA)。

  • GWT提供了在JAVA編寫用戶端應用程式開發選項。

  • GWT編譯JAVA寫的程式碼到JavaScript程式碼。

  • 在GWT編寫的應用是跨瀏覽器相容。 GWT會自動生成適合每個瀏覽器的javascript程式碼。

  • GWT是開源的,完全免費的,數千名世界各地的開發人員所使用。它是根據Apache許可證2.0版授權。

總體來說,GWT是一個框架,以建設大型和高效能的Web應用程式,同時保持他們易於維護。

為什麼要使用GWT?

  • 作為基於Java,可以使用的JavaIDE如Eclipse開發GWT應用程式。開發可以使用程式碼auto-complete/refactoring/navigation/project 管理和整合開發環境的所有功能。

  • GWT提供全面的偵錯功能。只是作為一個Java應用程式開發人員可以偵錯用戶端應用程式。

  • GWT提供了易於整合與JUnitMaven

  • 同樣是基於Java的,GWT具有低為Java開發人員的學習曲線。

  • GWT生成優化的JavaScript程式碼,自行產生特定瀏覽器的javascript程式碼。

  • GWT提供小工具庫提供的大多數應用程式所需的任務。

  • GWT是可延伸的,可以建立自定義部件以滿足應用需求。

在一切之上,GWT應用程式可以執行在所有主要的瀏覽器和智慧手機,包括Android和iOS手機/平板電腦。

GWT的缺點

雖然GWT有很多加分點,但同時我們應該考慮以下幾點:

  • 不可索引 : 由GWT生成的Web頁面將不會被搜尋引擎收錄,因為這些應用程式是動態生成的。

  • 不可降解: 如果您的應用程式的使用者禁用JavaScript,然後使用者只會看到的基本頁面,僅此而已。

  • 設計師不友好: GWT是不適合那些喜歡在稍後的時間點插入動態內容的預留位置使用純HTML的網頁設計師。

GWT元件

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虛擬機器。