Adobe AIR是什么
AIR允許你利用現(xiàn)有的web開(kāi)發(fā)技能(包括Flash, Flex, HTML, JavaScript, Ajax)優(yōu)勢(shì),建立和配置跨平臺(tái)(或跨操作系統(tǒng))的桌面RIA(Internet Applications)應(yīng)用。
AIR能使你在熟悉的環(huán)境下工作,去利用你覺(jué)得的最舒適的工具,并且通過(guò)支持Flash, Flex, HTML, JavaScript, and Ajax,去建立接近你需要的盡可能好的體驗(yàn)。
比如應(yīng)用程序能用下列一個(gè)或一個(gè)技術(shù)的組合來(lái)開(kāi)發(fā):
- Flash / Flex / ActionScript
- HTML / JavaScript / CSS / Ajax
- PDF can be leveraged with any application
- 因此,AIR 應(yīng)用程序可以是下列幾種情況:
- 基于 Flash or Flex: 基礎(chǔ)內(nèi)容是 Flash/Flex (SWF)的應(yīng)用程序
- 基于 Flash or Flex 附帶HTML 或 PDF. 基礎(chǔ)內(nèi)容是Flash/Flex (SWF) 帶有 HTML (HTML, JS, CSS) 或PDF內(nèi)容的應(yīng)用程序
- HTML為基礎(chǔ). 基礎(chǔ)內(nèi)容是HTML, JS, CSS的應(yīng)用程序
- HTML為基礎(chǔ)附帶 Flash/Flex或 PDF. 基礎(chǔ)內(nèi)容是HTML帶有Flash/Flex (SWF)或PDF 內(nèi)容的應(yīng)用程序
用戶(hù)與AIR應(yīng)用程序交互操作,與他們使用本地桌面程序的方法是一樣的。AIR虛擬機(jī)runtime一旦被安裝在用戶(hù)的計(jì)算機(jī)上,AIR應(yīng)用程序就能象其他桌面應(yīng)用程序一樣,被安裝和運(yùn)行。
由于 AIR 是一個(gè)應(yīng)用程序的運(yùn)行時(shí)環(huán)境,它的用戶(hù)界面幾乎不可見(jiàn),您可以完全控制在上面運(yùn)行的應(yīng)用程序和它提供給用戶(hù)的體驗(yàn)。 該運(yùn)行時(shí)環(huán)境為部署應(yīng)用程序提供了一個(gè)一致的跨操作系統(tǒng)的平臺(tái)和框架,因此可以取消跨瀏覽器測(cè)試, 可以通過(guò)確保跨桌面的功能和界面的一致性來(lái)實(shí)現(xiàn)。 你現(xiàn)在只需要針對(duì)這個(gè)運(yùn)行時(shí)環(huán)境來(lái)進(jìn)行開(kāi)發(fā),而不必對(duì)各種特定的操作系統(tǒng)一一進(jìn)行開(kāi)發(fā)。 這帶來(lái)很多優(yōu)點(diǎn):
應(yīng)用程序開(kāi)發(fā)跨越多個(gè)平臺(tái),這些都不需要你額外的工作。
應(yīng)用程序可以用你熟悉的web技術(shù)和設(shè)計(jì)模式快速建立,而不用學(xué)習(xí)傳統(tǒng)的復(fù)雜的本地桌面開(kāi)發(fā)技術(shù),不用學(xué)習(xí)底層開(kāi)發(fā)語(yǔ)言如c或c++,也不需要學(xué)習(xí)每一個(gè)特定的操作系統(tǒng)的底層API技術(shù)。
當(dāng)開(kāi)發(fā)基于AIR的應(yīng)用程序時(shí),你可以利用的框架和API的優(yōu)勢(shì)
特定的基于AIR運(yùn)行時(shí)的APIs ,和 AIR 框架
在swf文件里使用的ActionScript APIs 和Flex 框架
AIR提供一個(gè)新的范例,大大地改變了應(yīng)用程序建立,部署和體驗(yàn)的方式。 你可以取得更多創(chuàng)造性的控制,并且能擴(kuò)展你的Flash, Flex, HTML, 和基于Ajax的程序到桌面應(yīng)用程序,而無(wú)需學(xué)習(xí)傳統(tǒng)桌面程序開(kāi)發(fā)技術(shù)。
優(yōu)勢(shì)
AIR被媒體譽(yù)為2007年最值得關(guān)注的技術(shù),就像當(dāng)時(shí)的ajax一樣,將被廣泛的關(guān)注。
現(xiàn)在來(lái)看看Air的優(yōu)勢(shì)在哪里?要明白其優(yōu)勢(shì),需要先清楚下列的幾個(gè)問(wèn)題。
一、目前網(wǎng)絡(luò)應(yīng)用的幾種形式
網(wǎng)絡(luò)應(yīng)用紛繁復(fù)雜,但我想大概可以劃分為下列幾種類(lèi)型:
web訪問(wèn)方式-如大量的網(wǎng)站服務(wù)應(yīng)用,直接通過(guò)ie和firefox等瀏覽器,借助統(tǒng)一標(biāo)準(zhǔn)的http協(xié)議獲得服務(wù),雖然瀏覽器也是客戶(hù)端,但對(duì)用戶(hù)來(lái)說(shuō)已是標(biāo)準(zhǔn)配置,而且用戶(hù)訪問(wèn)的web服務(wù)與瀏覽器無(wú)關(guān),所以可以和下面的桌面軟件分開(kāi)來(lái)說(shuō);
優(yōu)點(diǎn)是:跨平臺(tái),除了具有桌面程序所有的一切優(yōu)點(diǎn)外,跨平臺(tái)性是其最大的優(yōu)勢(shì),與操作系統(tǒng)平臺(tái)無(wú)關(guān),與瀏覽器無(wú)關(guān)。
缺點(diǎn)是:用戶(hù)的交互操作及用戶(hù)體驗(yàn),比不上桌面應(yīng)用程序雖然目前web的ajax技術(shù)使這一問(wèn)題有了改觀,但依然不如客戶(hù)端來(lái)的方便;可提供的web服務(wù)形式比較受單一協(xié)議的限制。
局限于操作系統(tǒng)的桌面(或客戶(hù)端)程序-如bt下載、im軟件等,種類(lèi)繁雜,協(xié)議眾多,需要下載安裝才能獲得服務(wù)的。
優(yōu)點(diǎn)是:用戶(hù)的交互操作體驗(yàn),只要想做就可以做的很到位,因?yàn)樵S多操作是在本地,不用網(wǎng)絡(luò)鏈接,所以操作響應(yīng)即時(shí),另外提供的網(wǎng)絡(luò)服務(wù)形式不象web受單一協(xié)議的局限,甚至可以做自己的協(xié)議。
跨平臺(tái)的客戶(hù)端應(yīng)用程序-主要是sun倡導(dǎo)的java技術(shù),一次開(kāi)發(fā)跨平臺(tái)執(zhí)行。
缺點(diǎn)是:其技術(shù)本身要求下載一個(gè)虛擬機(jī)安裝,對(duì)大多數(shù)網(wǎng)民來(lái)說(shuō)也是一個(gè)門(mén)檻。
Adobe AIR技術(shù)的特點(diǎn)
從Adobe官方的宣傳來(lái)看,其特點(diǎn)有下列幾點(diǎn):
1、本地運(yùn)行-類(lèi)似桌面應(yīng)用程序。
2、跨平臺(tái)-類(lèi)似java技術(shù),在不同的操作系統(tǒng)上有對(duì)應(yīng)的虛擬機(jī)支持,目前已經(jīng)有windows和mac,linux。
3、開(kāi)發(fā)是基于現(xiàn)有的web技術(shù),如Flash / Flex / ActionScript / HTML / JavaScript / CSS / Ajax /PDF,對(duì)于開(kāi)發(fā)人員,不需要學(xué)習(xí)c、c++、java之類(lèi)的底層開(kāi)發(fā)語(yǔ)言,不需要學(xué)習(xí)具體操作系統(tǒng)底層API的開(kāi)發(fā);這降低了開(kāi)發(fā)門(mén)檻,使現(xiàn)有的做web開(kāi)發(fā)的技術(shù)人員,依賴(lài)其原本就很熟悉的開(kāi)發(fā)模式,稍加訓(xùn)練就可以開(kāi)發(fā)良好豐富的富客戶(hù)端應(yīng)用。
Adobe AIR和目前其他幾種網(wǎng)絡(luò)應(yīng)用形式比較
優(yōu)勢(shì)比較
1、比web的優(yōu)勢(shì)在于,有客戶(hù)端的優(yōu)勢(shì);可以脫機(jī)運(yùn)行,在需要的時(shí)候偶爾連接網(wǎng)絡(luò)。
2、比傳統(tǒng)的客戶(hù)端優(yōu)勢(shì),在于跨平臺(tái),和低開(kāi)發(fā)成本,比如這一特性可以使現(xiàn)有的國(guó)內(nèi)電子雜志系統(tǒng),輕松實(shí)現(xiàn)跨平臺(tái)。
3、比java跨平臺(tái)的優(yōu)勢(shì)在于,其flash技術(shù)本身的帶來(lái)的更吸引人的交互表現(xiàn)。
Adobe AIR會(huì)存在的問(wèn)題缺點(diǎn):
1、其虛擬機(jī)的下載安裝,會(huì)是一個(gè)推廣的門(mén)檻。
2、畢竟采用的大多是web 開(kāi)發(fā)技術(shù),雖然在桌面端有些api擴(kuò)展,但肯定也不能完全替代傳統(tǒng)客戶(hù)端的開(kāi)發(fā)。
綜述
綜上所述Adobe Air技術(shù)的前景應(yīng)該還是非常好的,只要其虛擬機(jī)的推廣規(guī)模和flash插件一樣,其巨大的應(yīng)用空間,將不可小視;相信有flash技術(shù)普及的底子,實(shí)現(xiàn)這一點(diǎn)也不會(huì)是個(gè)難事,當(dāng)然還要依賴(lài)于使用這一技術(shù)的各應(yīng)用開(kāi)發(fā)商的努力推廣支持。