JavaFX 1.2中的三大重要特性
近日結(jié)束的JavaOne 2009上展示了6月初新發(fā)布的JavaFX 1.2,其中一些是關(guān)于Java FX未來的產(chǎn)品,還有一些則尚未發(fā)布。本文當(dāng)然不會對此一一列舉。本文將談及的均是JavaFX的新版本,也就是以前代號為Marina,現(xiàn)在稱為JavaFX 1.2的版本的三大重要功能特性。
支持Linux和Solaris
在Linux和Solaris之下對JavaFX的支持已經(jīng)讓我們等了相當(dāng)長一段時(shí)間。經(jīng)歷千辛萬苦,我們現(xiàn)在終于迎來了測試版。我們的目標(biāo)是讓Solaris和Linux成為JavaFX世界中與Windows和Mac具有同等地位的平臺。JavaFX的目標(biāo)是要讓一種Java能適應(yīng)所有屏幕以及所有的操作系統(tǒng)。這是向該目標(biāo)又靠近了一步。
有些功能還不能使用,這也是為什么我們稱其為測試版的原因,但是它仍然是一個(gè)良好的開端。我們現(xiàn)在使用支持視頻的GStreamer,曾是缺少的一個(gè)關(guān)鍵性能。你有可能會獲得一些圖像硬件加速功能,當(dāng)然這要取決于你的distro組件和配置。陰影窗口還不能使用。這是因?yàn)榛A(chǔ)JRE中存在漏洞。負(fù)責(zé)圖形處理的程序師稱他們已經(jīng)針對這一漏洞開發(fā)出了補(bǔ)丁,而該補(bǔ)丁預(yù)計(jì)會在不久后的Java6和OpenJDK中推出,因此你不需要等到下一版本的JavaFX。
控件和布局
JavaFX具備非常好的圖形處理但是在1.0版本中只有單獨(dú)的本地用戶界面控件TextBox。而僅僅是使用文本控件很難制作出真正意義上的商業(yè)應(yīng)用程序。這一切現(xiàn)在都有所改變。JavaFX 1.2 擁有真正適合21世紀(jì)的用戶界面控件。我們總是在愛恨中徘徊,思考著長遠(yuǎn)的用戶界面工具包的發(fā)展趨勢。然后我們會創(chuàng)建出新的控件并且API布局,這些努力解決了人們所需的一部分應(yīng)用程序。而這里只是對新控件粗略做一下介紹:
◆所有的控件都可以用CSS更換皮膚,因此設(shè)計(jì)師可以創(chuàng)造出一般式樣的程序。
◆存在一個(gè)默認(rèn)的控件觀感Caspian。
◆控件位于公用文件參數(shù)中,這意味著他們可以在所有設(shè)備上運(yùn)行而不只是桌面。
◆用于標(biāo)準(zhǔn)性能的新型控件,如進(jìn)程指示器和超鏈接。
◆都是建立在JavaFX布景圖之上,因此不會有剩余的AWT。
和這些控件一起出來的是布局系統(tǒng),它能處理AWT布局的問題?,F(xiàn)在要將布局和動畫綜合起來就變得非常容易了,而且只需用幾行代碼就可以創(chuàng)建自定義的布局。使用這些控件,我們可以創(chuàng)建真正意義上能跨屏幕運(yùn)行的商業(yè)程序。
當(dāng)前列表中缺少一些控件。尤其是Tablet和Tree的缺失。這并不意味著開發(fā)團(tuán)隊(duì)無意向其中添加這些控件。主要是因?yàn)闆]有足夠的時(shí)間來添加。不過將來這些控件還是會提供的。
速度
JavaFX的目標(biāo)就是讓每個(gè)使用它的人都享受到更快的更新速度。你會發(fā)現(xiàn)JavaFX 1.2要比1.1和1.0更快。從啟動時(shí)間,內(nèi)存使用情況和圖形處理性能來看,每個(gè)部分的性能都有所改進(jìn)。對于某些任務(wù)其性能更是有了多達(dá)三倍的改進(jìn)。
為了實(shí)現(xiàn)這種速度的改進(jìn),程序員重新審視過整個(gè)平臺。編譯器從使用真正多重繼承轉(zhuǎn)為Mixins。這樣就消除了多重繼承的弊病。附帶的好處就是基本匯編代碼變得更小且更快。
圖形開發(fā)小組花了大量的時(shí)間來重新設(shè)計(jì)場景圖以便實(shí)現(xiàn)更智能化的場景更新。其結(jié)果是減少了用戶重新繪制的次數(shù),帶來了反響更好的用戶界面。
在視頻和音頻堆棧以及基本圖形流水線里都存在漏洞補(bǔ)丁。此外,減少了啟動時(shí)間并改善了Webstart的性能??傊銜l(fā)現(xiàn)JavaFX 1.2為用戶帶來了比以往更為快速而流暢的體驗(yàn)。
上述三個(gè)特性還只是JavaFX 1.2中的很小一部分。最重要的一點(diǎn)是這些都是JavaFX開發(fā)計(jì)劃的一部分。更快與更小的特性確保了程序員能高速高效地為客戶開發(fā)出高質(zhì)量的軟件。
【編輯推薦】