《Flex 3 RIA開(kāi)發(fā)詳解與精深實(shí)踐》 Flex 3程序設(shè)計(jì)基礎(chǔ)
Flex 是一種RIA開(kāi)發(fā)技術(shù),具有更好的網(wǎng)絡(luò)交互能力,更加絢麗的表現(xiàn)效果,同時(shí)在企業(yè)級(jí)的擴(kuò)展上也游刃有余。Flex技術(shù)對(duì)軟件開(kāi)發(fā)人員的要求并不苛刻,MXML和ActionScript都遵循技術(shù)標(biāo)準(zhǔn),用相對(duì)簡(jiǎn)單的代碼就可以完成絢麗高效的Flex應(yīng)用程序。
作為Flex技術(shù)的組成部分,F(xiàn)lex Charting讓我們可以靈活地進(jìn)行圖表編程,F(xiàn)lex Data Service讓我們可以將Flex應(yīng)用程序部署成為企業(yè)級(jí)應(yīng)用。
Flex Builder是一個(gè)實(shí)用的集成開(kāi)發(fā)環(huán)境,通過(guò)這個(gè)環(huán)境,可以高效地完成Flex程序的編寫(xiě)。
1.1 RIA概述
本章內(nèi)容介紹Flex的背景和技術(shù)特點(diǎn),并通過(guò)示例程序來(lái)展示Flex的界面效果和技術(shù)內(nèi)涵。
Internet已經(jīng)是我們生活的一部分,而“看網(wǎng)頁(yè)”可以說(shuō)是網(wǎng)絡(luò)瀏覽者與Internet最簡(jiǎn)單的溝通方式。打開(kāi)瀏覽器,進(jìn)入一個(gè)網(wǎng)站瀏覽,這就是瀏覽者們看到的最直觀的Internet的外表。盡管頁(yè)面上不是單一的文字,但也僅僅是“頁(yè)”。然而如今這些傳統(tǒng)的呆板的“頁(yè)”已經(jīng)不再能滿(mǎn)足網(wǎng)絡(luò)瀏覽者的要求了。多媒體、多元化的信息表現(xiàn)在一個(gè)頁(yè)面上,的確很是單薄。
另一方面,開(kāi)發(fā)人員也一直在為過(guò)分依賴(lài)于頁(yè)面刷新、請(qǐng)求響應(yīng)等諸多傳統(tǒng)網(wǎng)頁(yè)開(kāi)發(fā)技術(shù)固有的問(wèn)題而煩惱。當(dāng)然我們不能忽略B/S架構(gòu)能夠取代C/S長(zhǎng)期大行其道有一個(gè)重要的因素,就是網(wǎng)絡(luò)帶寬問(wèn)題。
傳統(tǒng)網(wǎng)頁(yè)內(nèi)容簡(jiǎn)單,節(jié)省網(wǎng)絡(luò)帶寬的優(yōu)勢(shì)是與生俱來(lái)的,而如今網(wǎng)絡(luò)技術(shù)在不斷地發(fā)展,軟硬件發(fā)展又達(dá)到了一個(gè)并駕齊驅(qū)的時(shí)期,軟件系統(tǒng)已經(jīng)不需要等待硬件的發(fā)展而發(fā)展。有了強(qiáng)烈的需求,又有了充足的硬件基礎(chǔ),新技術(shù)應(yīng)運(yùn)而生,Rich Internet Application (RIA)的出現(xiàn)給網(wǎng)絡(luò)瀏覽者和開(kāi)發(fā)人員都帶來(lái)了全新的體驗(yàn)。
Rich Internet Application即是富因特網(wǎng)應(yīng)用程序,其特點(diǎn)也體現(xiàn)在一個(gè)“富”字上,傳統(tǒng)的HTML頁(yè)面帶給用戶(hù)的頁(yè)面元素是極其有限的,輸入框、選擇框、下拉框等無(wú)法替換的元素,恐怕早就對(duì)瀏覽者帶來(lái)了審美疲勞,更何況在功能上也存在著很大不足。對(duì)比傳統(tǒng)頁(yè)面,RIA的界面是“富”的,基本上一個(gè)桌面程序能表現(xiàn)出來(lái)的效果,RIA都能表現(xiàn)。
圖1.1中的網(wǎng)站是一個(gè)名為scrapblog的博客網(wǎng)站,與我們常見(jiàn)到的博客網(wǎng)站不同,這個(gè)網(wǎng)站使用一種RIA技術(shù)構(gòu)建,在頁(yè)面表現(xiàn)力和交互性上都遠(yuǎn)遠(yuǎn)超過(guò)了常見(jiàn)的博客網(wǎng)頁(yè)。
圖1.1 使用RIA技術(shù)實(shí)現(xiàn)的網(wǎng)站——scrapblog (點(diǎn)擊上圖放大)
如果說(shuō)RIA的優(yōu)勢(shì)僅僅是豐富的界面表現(xiàn)能力的話,那么大家會(huì)認(rèn)為這不過(guò)就是個(gè)C/S架構(gòu),RIA的另一大特點(diǎn)也正是與C/S架構(gòu)最大的不同:數(shù)據(jù)上的“富”。傳統(tǒng)的網(wǎng)頁(yè)開(kāi)發(fā)基于HTTP協(xié)議,數(shù)據(jù)的交互依賴(lài)于請(qǐng)求/響應(yīng)機(jī)制;界面的交互則需要進(jìn)行頁(yè)面的跳轉(zhuǎn)和刷新。RIA的處理則有很大不同,在客戶(hù)端可以進(jìn)行完整的數(shù)據(jù)處理,與用戶(hù)的交互更加友好、更加迅速;界面交互并不依賴(lài)頁(yè)面,消息通過(guò)異步請(qǐng)求傳遞,面向用戶(hù)界面中的各個(gè)小模塊,客戶(hù)端的模塊之間關(guān)系清晰,處理起來(lái)更加靈活。
對(duì)于企業(yè)級(jí)應(yīng)用來(lái)說(shuō),RIA技術(shù)并不需要替換掉現(xiàn)有的體系結(jié)構(gòu)模型,如JavaEE(以前稱(chēng)J2EE)、.NET架構(gòu)等。RIA技術(shù)通常可以和企業(yè)級(jí)應(yīng)用體系結(jié)構(gòu)很好地進(jìn)行整合。將原有的系統(tǒng)構(gòu)建成更易用、更直觀、更迅速的“網(wǎng)頁(yè)應(yīng)用程序”。在不會(huì)影響到原有應(yīng)用的前提下,RIA技術(shù)對(duì)表現(xiàn)層進(jìn)行了大幅度的增強(qiáng),進(jìn)一步提升界面的友好程度,并且減少了用戶(hù)與系統(tǒng)的遠(yuǎn)程交互頻率,減少了帶寬需求。
RIA開(kāi)發(fā)技術(shù)已經(jīng)有很多種,Adobe公司的Flex發(fā)展日趨成熟,微軟公司的SilverLight及Sun公司的JavaFX也嶄露頭角。Flex技術(shù)的優(yōu)勢(shì)得天獨(dú)厚,有強(qiáng)大的Flash平臺(tái)作后盾,SilverLight和JavaFX在RIA的實(shí)現(xiàn)上則各有側(cè)重,SilverLight作為一個(gè)瀏覽器插件支持廣泛,而且對(duì)于JavaScript和微軟的.NET技術(shù)無(wú)縫結(jié)合,而JavaFX體系不僅希望利用編寫(xiě)更容易的JavaFX Script取代JavaScript,更是提供了JavaFX Mobile,為手機(jī)及移動(dòng)設(shè)備增加了應(yīng)用程序支持。
出處:藍(lán)色理想
責(zé)任編輯:bluehearts
上一頁(yè) 下一頁(yè) Flex簡(jiǎn)介
◎進(jìn)入論壇RIA設(shè)計(jì)與應(yīng)用版塊參加討論
|