程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA編程入門知識 >> Sun:JavaFX Mobile和JavaFX Script

Sun:JavaFX Mobile和JavaFX Script

編輯:JAVA編程入門知識

  Sun一直走在開源領域的前列,這次的JavaFX是一個構建於Java技術之上完整的運行時環境,可以用來交付到桌面、移動設備、手持設備和電視等環境的富互聯網應用(RIA)。在這些裡的每一個硬件平台上,這個新技術都提供一個腳本語言,以結合Java的威力用於快速開發有Flash效果和交互式圖形用戶接口的應用程序。但是這還遠不是JavaFX所展示的全部,它還代表了Sun的一個裡程碑式新商業策略和一門新前沿技術。InfoQ就此采訪了Sun的首席技術官Bob Brewin,他解釋了這一技術對Sun、Java開發者以及使用者等這些JavaFX所真正關注的對象的意義。

  問到是什麼驅動了Sun在這個時候向市場推出這個技術,Brewin沒有像常人所想的那樣回答說是為了更豐富、更快速開發桌面Web內容的需要,而是表示說JavaFX是對Flash和Ajax增長的一種回應,現在移動手機和電視屏幕比桌面浏覽器離用戶更近,在他的思想裡,這些才是JavaFX最重要的驅動力。這正好印證了Sun在大會上所講的將注重力放在消費者產品上的觀點,這樣Sun就有可能為Java技術占領最大范圍的市場。Brewin指出,現在世界上大部分人在訪問互聯網內容時的首要選擇不是桌面計算機,而是移動手機。

  根據目標硬件平台的不同,JavaFX或者構建在Java SE上或者Java ME上,但是以Mobile的眼光來看,它更像是一個可以制作交互式內容的產品化腳本接口——一個設備上的完整操作系統,包括Linux內核和本地服務等。它應該被看作Windows Mobile、Symbian OS和其他移動Linux平台的競爭對手。在移動手機上運行時,JavaFX Mobile能實現內嵌在大多數移動手機裡的電話服務。所以以這個觀點來看,你就能明白這一技術和Sun最近從SavaJe處所獲技術的關系。Linux 內核和CDC Personal Basis Profile Java runtime的目標是與高級智能手機一個級別的手持設備,以及電視和其他連接設備,但是Brewin說隨著運行時的優化和完善,Sun也會將此應用到 CLDC MIDP等“功能手機(Feature Phone)”。因為整個JavaFX軟件系列都將會開源,所以Sun期望能通過出售完整的設備平台來增加許可(License)收入,而不僅僅是 Java運行時環境。很多項目都在進行之中,甚至包括Solaris內核這一現在應用在大多數移動設備都有的ARM處理器上的簡易操作系統。

  問到JavaFX Script的起源,Brewin回答說這個用於腳本化交互式GUI的語言是由Sun工程師Chris Oliver所開發,當時他還在SeeBeyond技術公司(2005年被Sun收購)。很多開發者可能都熟悉它從前的名字——F3。JavaFX Script靜態類型化並提供編譯時錯誤檢查機制,使得它有可能被用於開發可支持代碼完成、超鏈接、重構等功能的強大工具。其他的語言特性包括類型推斷(type-inference)、聲明語法,以及完全支持2D圖像、標准Swing組件和聲明動畫的自動數據綁定等。你還可以導入Java類,創建新的 Java對象,調用它們的方法,以及實現Java接口等。

  相應的制作工具也在開發之中,但是在大會上Chris展示了一個由他自己開發的可用於JavaFX腳本化的交互式GUI構建器。這個工具包含在 JavaFX面向開發者社區所發布的初始版本裡。因為腳本語言和工具在所有的目標平台上都保持一致,所以JavaFX看上去能實現Sun的“一次編寫,處處運行”的承諾,甚至比Java自己做的還好。當然,在JavaFX腳本裡被導入和調用Java對象會依靠提供的Java運行時。對於為只有有限資源和缺少Swing或者AGUI類庫支持的CLDC設備所發布的JavaFX版本而言,它的功能某種程度上肯定會減弱。

  桌面JavaFX現在所要考慮的一個問題是部署。對於從前沒有安裝過JRE的用戶來說,JRE體積太大,而且現在從浏覽器上進行按需安裝的用戶體驗也不是非凡好。Brewin在演講中提出了一個可行的解決方案,在Java 6 Update 2裡將會為JRE引入一種新型的部署模型,初次下載時體積非常小,只有在需要時才下載其他的JRE組件。他說這個概念非常類似Java 7中提到的Java Kernel項目。被問到類似的部署模型會不會用在Java ME上時,Brewin說當然有可能,這會由Java Community Process來推進。

  讓他對JavaFX和Adobe Flash做個對比時,Brewin回答說這是一個“蘋果和橘子”的比較。Flash有很好的功能,但它永遠不能交付Java類庫的大部分功能,而 JavaFX可以。他說更好的比較是在JavaFX和Apollo(Adobe將要為桌面RIA提供的一個運行時)之間。在這個擂台上,他認為 JavaFX會非常有競爭力。


 
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved