臺灣昇陽每年舉辦的「JavaTwo專業技術大會」,在今年改為「昇陽科技日(Sun Tech Days)」,會中說明昇陽在企業應用、行動裝置、桌上系統、網路服務、SOA、Ajax、Solaris等領域的技術進展。其中JavaFX是開發者好奇的新技術,可看出昇陽訴求提供開發者比Java SE學習門檻低的2D設計技術。

JavaFX分為JavaFX Script與JavaFX Mobile
由於大中華區的昇陽科技日,由北京的技術團隊主講,所以臺灣的講師只剩3位。雖然昇陽在上午的主題演講強調Solaris開放源碼的成果,不過多數學員關心的卻是Java的發展,尤其JavaFX更吸引許多學員的好奇。

昇陽中國工程研究院技術傳教士(Technology Evangelist)李濤表示,JavaFX分為JavaFX Script與JavaFX Mobile兩部分。JavaFX Script是類似JavaScript的腳本語言(Script Language)。昇陽推出JavaFX Script希望可以兼顧Java跨平臺及腳本語言簡易開發的好處,提供開發者快速開發RIA(Rich Interactive Application)的應用。

而JavaFX Mobile目前仍處於概念推廣階段,具體的應用尚未成形,李濤認為:「JavaFX Mobile不是要取代Java ME。」Java ME是手機的開發平臺,而JavaFX Mobile則是手機的運行環境,對應的競爭對手是Windows ME、Symbian及Palm等作業平臺,至於更明確的細節,預計要到明年的JavaOne才會有更明確的說明。

JavaFX大幅降低設計門檻,但仍缺GUI工具
從李濤提出的範例,可以發現JavaFX Script所設計的效果,其實Java SE同樣可以做到,但JavaFX將大幅降低視覺效果的設計門檻。從一段「Hello World」的程式碼,可以看出JavaFX Script的語法簡潔許多。

此外,李濤針對JavaFX與Flash的比較說明:「事實上Flash的效果, Java 2D的API也同樣做得到,只是難度較高,未來若採用JavaFX會簡單很多。」

對Java開發者而言,使用JavaFX Script的好處,在於JavaFX Script支援所有Java的函式庫(Library),可在JavaFX Script中穿插Java語法,也可以使用Swing及2D的所有元件。

JavaFX Script的部署是透過Java Web Start下載,用戶端只要有約1.5MB的JavaFX執行環境(Run Time Environment)即可執行。

現階段JavaFX Script的發展仍不算成熟,因為目前只有Reportmill公司推出圖形化使用者介面設計工具──JFXBuilder,但僅支援Linux與Unix作業系統。而昇陽的NetBeans目前尚未提供圖形化設計功能。

訴求開發與設計使用相同語言
另一個引發關注的問題,是網頁開發已存在包括JavaScript、Ruby、Python等多種腳本語言,而昇陽再推出JavaFX Script,開發者的學習意願可能不高。

李濤則強調:「昇陽推出JavaFX Script的目的,是希望開發者與設計人員可以使用相同的語言,避免雙方溝通不良的問題。」

Java SE 6開放源碼原則:開放實作,不開放規格
除了JavaFX外,另一個吸引開發者目光的是Java SE的發展。昇陽技術傳教士沈卓立在主題演講中展示Java SE的應用,可以設定酷炫的啟動畫面、資料輸入的錯誤提示機制,及有如動畫般的資料篩選效果,都是過去無法想像Java SE可以實現的功能。

為此,臺灣昇陽教育訓練技術顧問陳俊亨特別利用一個小時的課程,預告Java SE未來可能的演進。Java SE 6自2006年11月宣布開放源碼後,引發社群熱烈回響。事實上,昇陽為不使Java語言走向分岐,因此雖然開放Java SE及Java ME的實作(Implementation),但並沒有開放Java的語言、規格及TCK(Technology Compatibility Kit)。也就是說社群可調校函式的撰寫方法,但規格的制定、測試與發布,主導權仍由昇陽與JCP組織掌握。

Java SE 6功能改進很多,昇陽聲稱是桌面應用的一大勝利,不過結局仍是備受社群抨擊,所以Java SE 7又做了許多優化,希望可以提升開發Java SE應用的意願。

Java SE 7提出一個新的Superpackage的架構,幫助開發者突破Public、Private及Protect,更進一步地管理程式存取範圍。此外,目前Java SE 6透過Rhino平臺可以支援JavaScript,到了Java SE 7,ByteCode的型態將有所改變,支援Dynamically Typed Language,有助於推行其他Script語言移植到JDK。

JRE至今最為人垢病的問題,仍在下載的檔案大,及安裝時間很長。JRE 6甚至超過10MB,於是JRE 7希望改善安裝時間,因此JRE將模組化,讓使用者只下載更新或需要的部分,不必整包下載。文⊙李延華

熱門新聞

Advertisement