java 板


LINE

關鍵字有 link 的版本:http://blog.dontcareabout.us/2011/11/gwt.html errai 是由 JBoss 所維護的 GWT framework。 這篇的原文是張貼在 errai 的官方開發 blog 上, 內容以及基本論調與當初自己寫的〈GWT:這是什麼?幹什麼的?〉相似。 不過人家是搞 JavaEE 的 JBoss、我只是個小痞子, 所以還是翻譯一下,提供對照比較的機會。 ======== 原文網址:http://errai-blog.blogspot.com/ 2011/11/setting-record-straight-on-gwt.html 自從加入 Errai 團隊後,我對人們說了很多關於這個 project 的事。 每次在述說的時候,我發現我是在驅除人們對 GWT 的常見誤解、 以及講解 GWT 可以怎麼使用。 我也發現人們對於 GWT 的程式碼可以輕易地存取 browser 的原生環境感到驚訝, 雖然 GWT 在跨 browser 之間的實作細節處理的很好, 但 GWT 並不是建立一道高牆把你跟底層環境隔絕開來。 所以,GWT 是啥? GWT(Google Web Toolkit)是一個包含許多獨立部份的 project。 下面列出其中一部分: →一個將 Java 編譯成 JavaScript 的 compiler。 →一個 library 提供: →JavaSE 5 標準 library 的一個子集(尤其是 java.lang 與 java.util) →可程式化的 UI Framework(像 Swing 那樣) →原生 browser 功能——例如 JSON、XML 的操作、 XMLHttpRequest(AJAX 跟 Comet)、 以及 Canvas、Local storage、Audio、Video 這些 HTML5 的功能 ——的 Java wrapper。 →RPC 機制,前提是你的 application 後端是用 Java 寫的才能用。 (GWT RPC 沒辦法輕易改裝既有的 object model, 不過你可以把他用來建立 server-side 的 RPC 層) →GWT Designer,一個視覺化 layout 工具, 可產生類似 Swing 的 UI framework 程式碼。 →UiBinder,一套定義 UI 的系統。 (定義 layout 的檔案實質上是一個 XHTML,裡頭設定了 GWT 的 widget, 有命名的 element 會自動對應到 Java class 中的 field) →給 Eclipse、Maven、Ant 的 plugin, 以協助建立、測試 GWT 的 application、並除錯。 compiler 是使用 GWT 的基礎。其他的部份則不是必須的: 你用或不用、混合著用、用 3rd party 的替代方案或是自己搞一個出來用都可以。 那,GWT 不是什麼? 我們已經用清單的方式將 GWT 是什麼給凸顯出來,現在的重點是界定它不是什麼: →GWT 並沒有限定 UI 的建立方式。 尤其是用「browser 上的 Swing」思維來建立 UI,這完全不必要 ——除非你本來就想這麼作。 →GWT 不像 JSF 是 server-centric 的系統, GWT application 會編譯成一堆 HTML、CSS、圖檔、JavaScript 的靜態檔案。 application 在 browser 上頭運作,只有在需要的時候與 server 作資料傳輸。 如果你沒有用 GWT RPC,你的 application 就不用放在 Java web server 上。 →GWT 不需要任何 browser plugin (譯註:這裡是相對於 Flash 等技術實際使用時需要安裝 plugin。 雖然說開發 GWT 基本上也是可以不裝 browser plugin...... XD)。 編譯完的 application 就是一個或多個標準的 web 頁面。 →GWT 並不阻止你直接寫 JavaScript。 你可以用 JSNI的方式在 Java class 中寫 inline JavaScript、 你可以把 Java API 轉成 JavaScript、 你也可以在 Java 當中呼叫 JavaScript API。 →GWT 並沒有停止開發(譯註:我也寫了〈GWT and Dart〉的中文翻譯)。 這個謠言實在太誇張了。 如果 GWT application 只是簡化 JavaScript 跟 HTML,幹麼這麼麻煩咧? 感謝你問了這麼一個好問題。有許多令人信服的理由, 讓我在原始 HTML 與 JavaScript 上使用 GWT。 我會在未來的文章當中指出我特別喜歡的原因, 此外,我也希望你能思索一下這個問題: 「如果 GWT 把這些都處理好了,為甚麼 Errai 也要來插一腳呢? 」 -- 錢鍾書: 說出來的話 http://www.psmonkey.org 比不上不說出來的話 Java 版 cookcomic 版 只影射著說不出來的話 and more...... --



※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.25.3.19







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:BabyMother站內搜尋

TOP