當前位置:
首頁 > 最新 > 記錄一下工作中用到的一種框架GWT

記錄一下工作中用到的一種框架GWT


GWT 簡介信息

Google Web Toolkit (GWT) 是一個Java軟體開發框架用於開發類似於Google Maps和Gmail的AJAX應用程序。GWT的設計參考Java AWT包設計,類命名規則、介面設計、事件監聽等。你可以用Java編程語言開發你的界面,然後用GWT編譯器將Java類轉換成適合瀏覽器執行的JavaScript與HTML。

GWT有3部分組成。第一部分是編譯部分,它負責將java程序轉換成js程序。第2部分是調試部分,該部分可以在不編譯的情況下調試GWT應用程序。這2個部分都是純java的。最後還有一部分是運行框架,它是以js的形式存在的,可以直接在瀏覽器中運行。它負責應用程序可執行代碼的載入和運行。這部分代碼主要包含在gwt.js文件中。

GWT 工作原理

使用 Java 語言編寫 AJAX應用程序,然後編譯為優化的 JavaScript

與僅在文本級別運行的JavaScript Minifier 不同,GWT編譯器會在整個 GWT 資料庫中執行綜合性靜態分析和優化,通常生成的JavaScript 載入和執行均比等效手寫的 JavaScript 更快。例如,GWT編譯器可以安全地消除無用代碼 --極大的減少不使用的類別、方法、欄位甚至方法參數 -- 以確保您編譯的腳本儘可能最小。另一個示例:GWT編譯器選擇性地內聯方法,消除方法調用的性能開銷。

交叉編譯提供了開發所需的可維護的提取和模塊性,而不會導致運行時性能損失。


GWT運行模式

GWT應用程序有兩種方式運行:

HostedModel

在Hosted Model方式下,Java程序並不會被編譯成JavaScript,GWT只是創造了一個類似瀏覽器的環境,直接運行使用GWT開發的程序。

這種模式最具生產力(這種模式下可以Debug所有的Java代碼), 所以開發環境通常使用Hosted Model,但是真正的程序執行不使用這種模式。

WebModel

WebModel就是將使用GWT編寫的Java程序整整編譯成JavaScript,在Web容器上運行,使用瀏覽器訪問的模式,這種方式只有在測試或者運行的時候才使用,每次對Java類的修改必須重新編譯這些Java類,之後重新部署應用。

所以生產力比較低。

GWT優點

脫離混亂的javascript

編譯可以優化並檢查各種語法錯誤

執行速度飛快

對html5支持極佳

GWT缺點

對javascript執行引擎依賴非常嚴重

對瀏覽器環境敏感

編譯時間很長,有bug無法立刻修改

編譯部署後難以直接跟蹤線上問題

用了一段時間我就放棄了。

為什麼放棄呢? 1.簡單的問題複雜化了, 2.線上問題不能馬上修改,要重新編譯一次。 3.項目大了,編譯時間要好久。

謝謝您的閱讀。您的滿意與肯定是我前進的動力! 歡迎關注老貓碼坊,與老貓一起了解更多互聯網科技和編程知識。
喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 老貓碼坊 的精彩文章:

TAG:老貓碼坊 |