- 相關(guān)推薦
客戶端交互技術(shù)介紹
隨著網(wǎng)絡(luò)應(yīng)用的不斷豐富,客戶端交互技術(shù)也如雨后春筍一般,遍地開(kāi)花。正是這些技術(shù)的支持,我們的互聯(lián)網(wǎng)世界變得更加豐富多彩。總體來(lái)看,目前的客戶端交互技術(shù)主要分為如下幾大類(lèi)別:
microsoft系列: ActiveX, Silverlight
java系列:Java Applet,RCP(RAP,GWT),JavaFX
Adobe系列: flash(flex),ActionScript,air
html系列: ajax(異步IO),html5
1. microsoft系列
1)ActiveX 這個(gè)在10年前是非常流行的。當(dāng)時(shí)的控件很單一。很多復(fù)雜的業(yè)務(wù)就 被封裝成一個(gè)個(gè)ActiveX控件。但這個(gè)有幾個(gè)問(wèn)題,1是只有IE才支持,其他瀏覽器現(xiàn)在有的雖然號(hào)稱(chēng)支持了,但和IE原生態(tài)環(huán)境相比,也只能說(shuō)是有了,效果還是有區(qū)別的。2是需要數(shù)字簽名。但是IE的安全級(jí)別又是可以設(shè)置的,所以安全漏洞百出。只能說(shuō)想法是好的,效果反而成為雞肋了。
2)Silverlight
Silverlight是Microsoft提供的一個(gè)跨瀏覽器的、跨平臺(tái)的插件,為Web帶來(lái)良好的多媒體體驗(yàn)和豐富的交互式應(yīng)用程序體驗(yàn);.NET平臺(tái),F(xiàn)在可以基于瀏覽器,也可以獨(dú)立運(yùn)行。
主要基于以下2大技術(shù):
XAML(可擴(kuò)展應(yīng)用程序標(biāo)記語(yǔ)言)--展示UI layout
WPF(WindowsPresentation Foundation)--用戶界面框架
Silverlight播出視頻及動(dòng)畫(huà)的效果很好,支持硬件加速
Silverlight支持windows 和IOS,支持ie和firefox,safari等。
Silverlight沒(méi)有了像activex的安全的問(wèn)題,也支持SEO。網(wǎng)站開(kāi)發(fā)者還是比較偏愛(ài)的。
Silverlight控件豐富,并支持第三方和自定義控件。
2. java系列
1)Java Applet:是網(wǎng)頁(yè)上的java程序。用awt作為圖形庫(kù)。含有Applet的網(wǎng)頁(yè)的HTML文件代碼中部帶有這樣一對(duì)標(biāo)記,當(dāng)支持Java的網(wǎng)絡(luò)瀏覽器遇到這對(duì)標(biāo)記時(shí),就將下載相應(yīng)的小應(yīng)用程序代碼并在本地計(jì)算機(jī)上執(zhí)行該Applet。之前的google編程大賽平臺(tái)就是用這個(gè)做的。要運(yùn)行javaapplet,首先要裝java虛擬機(jī),然后第一次使用時(shí),下載applet也需要一定時(shí)間,F(xiàn)在使用的不多了,只有在過(guò)去開(kāi)發(fā)的一些企業(yè)內(nèi)部管理系統(tǒng)中還能看見(jiàn)。
2)RCP。這里指的RCP是專(zhuān)門(mén)指Eclipse RCP。RCP提供了豐富的界面控件,這使得基于 Java 開(kāi)發(fā)桌面應(yīng)用也變得容易了很多。RCP 充分發(fā)揮了插件化系統(tǒng)的優(yōu)勢(shì), 是基于 OSGi 構(gòu)建插件化系統(tǒng)的最佳實(shí)踐。Eclipse RCP項(xiàng)目用SWT圖形庫(kù)和工具包取代了Java標(biāo)準(zhǔn)中的AWT和Swing。SWT直接調(diào)用了操作系統(tǒng)的圖形庫(kù),從而使得Java應(yīng)用程序的LOOK & Feel 與操作系統(tǒng)的習(xí)慣完全一致;更為重要的是,對(duì)本地方法的直接調(diào)用大幅度的提高了基于SWT 的Java應(yīng)用程序的運(yùn)行速度。當(dāng)然SWT也有先天的不足,它不是標(biāo)準(zhǔn)的java控件庫(kù),市場(chǎng)占有率不高,同時(shí)在ios上的性能表現(xiàn)也不佳,只是在windows上尚可。
RAP(Eclipse Rich AjaxPlatform):RAP 允許開(kāi)發(fā)人員使用豐富的 Java 庫(kù)和Eclipse API 構(gòu)建基于瀏覽器的 Ajax 應(yīng)用程序。RAP 主要運(yùn)行在服務(wù)器上。由于 RAP 運(yùn)行在服務(wù)器上,因此允許您訪問(wèn)豐富的 Java API 并允許通過(guò) OSGi 使用著名的Eclipse 插件模型。RAP 版與 RCP 版的主要差別在于插件依賴(lài)性(RAP 插件)和應(yīng)用程序入口點(diǎn)(IEntryPoint)。
GWT (GoogleWeb Toolkit)允許使用 Java 來(lái)編寫(xiě)富 Internet 應(yīng)用程序的代碼。GWT 運(yùn)行在客戶機(jī)上。GWT 類(lèi)似一個(gè)web的 SWT 應(yīng)用程序。
3)JavaFX:JavaFX將成為Java平臺(tái)上主流的圖形用戶界面開(kāi)發(fā)庫(kù)。但是在富客戶端領(lǐng)域,由于有其他3大系列的競(jìng)爭(zhēng),市場(chǎng)份額占有還是很少,未來(lái)難以估計(jì)。在組件的外觀方面,一套圖形用戶界面庫(kù)JavaFX2.0也采用了更加流行的做法,即用CSS來(lái)定義應(yīng)用的外觀。JavaFX2.0也引入了界面描述語(yǔ)言FXML.JavaFX 2.0開(kāi)始使用了java作為開(kāi)發(fā)語(yǔ)言而不是之前的JavaFX script. 在以后的開(kāi)發(fā)中,AWT和Swing應(yīng)該會(huì)逐漸淡出桌面應(yīng)用開(kāi)發(fā)的視野。 JavaFX能發(fā)揮作用的一個(gè)地方應(yīng)該是在企業(yè)內(nèi)部系統(tǒng)中。
3 Adobe系列:
1)flash(flex):Flash的編程模型是基于時(shí)間軸的,F(xiàn)lex的則是基于窗體。一個(gè)服務(wù)于設(shè)計(jì)師,一個(gè)服務(wù)于開(kāi)發(fā)人員。
2)ActionScript:開(kāi)發(fā) flash或者flex的編程腳本語(yǔ)言。
3) Adobe Air是利用Adobe公司的Flash技術(shù)開(kāi)發(fā)的視頻播放平臺(tái)。比較熟悉的例子:sina 微博 air。
優(yōu)點(diǎn): 1)跨平臺(tái)(跨操作系統(tǒng),跨瀏覽器) 2)技術(shù)門(mén)檻降低:只需要有web開(kāi)發(fā)技術(shù)3)可以脫機(jī)運(yùn)行,偶爾連接網(wǎng)絡(luò)4)基于flash的用戶體驗(yàn)更好
缺點(diǎn): 1)用戶體驗(yàn)和交互操作比桌面應(yīng)用還有不足,并且很多應(yīng)用需要安裝桌面應(yīng)用才行。2)需要安裝虛擬機(jī)
4.html系列
1)ajax
這個(gè)是目前的主流。Web2.0的基礎(chǔ)。該技術(shù)使得網(wǎng)頁(yè)實(shí)現(xiàn)異步的局部更新。市面上的所有的瀏覽器都支持。主流流行的js框架也都為止進(jìn)行了封裝。在流媒體處理上還有不足。
異步IO—是針對(duì)同步IO而言,增強(qiáng)client和server交互性的socket連接手段。經(jīng)常使用在各種分布式、即時(shí)通信和中間件系統(tǒng)中。是一種高效,且擴(kuò)展性很強(qiáng)的通信架構(gòu)。
2)Html5,是未來(lái)的趨勢(shì)。在瀏覽器層面解決客戶端交互,而不是之前說(shuō)的3類(lèi),通過(guò)插件的方式來(lái)增強(qiáng)交互。它支持多設(shè)備跨平臺(tái)。
Html5主要包括了一些新增的ui控件,如多媒體播放器webplayer,canvas等;增加了websoket的支持,這個(gè)是對(duì)異步IO的根本性的顛覆;增加webwork,舍得高性能計(jì)算和頁(yè)面展示可以線程分離,不影響用戶體驗(yàn);增加了css3支持,展現(xiàn)式樣上對(duì)3D效果更加支持。Html5通過(guò)history特性甚至解決了ajax不能修改URL這個(gè)先天不足。在云時(shí)代漸漸向我們走進(jìn)的時(shí)候,Html5將代表了未來(lái)。當(dāng)然,所有的這些需要通過(guò)市場(chǎng)的洗禮,一一落地。
總而言之,客戶端交互技術(shù)是在不斷的向前的。不為別的,只因?yàn)樗诨ヂ?lián)網(wǎng)時(shí)代將帶給使用者更真實(shí)的用戶體驗(yàn)。
【客戶端交互技術(shù)介紹】相關(guān)文章:
動(dòng)漫游戲交互創(chuàng)作的技術(shù)09-03
Flash的交互動(dòng)畫(huà)設(shè)計(jì)介紹04-02
數(shù)控技術(shù)專(zhuān)業(yè)介紹08-25
電子技術(shù)的應(yīng)用領(lǐng)域介紹10-06
寧波衛(wèi)生職業(yè)技術(shù)學(xué)院介紹02-02
關(guān)于五軸聯(lián)動(dòng)數(shù)控機(jī)床技術(shù)介紹03-31
排球的基本技術(shù)11-04
排球的技術(shù)要點(diǎn)03-11
湖羊的養(yǎng)殖技術(shù)07-24
蝸牛的養(yǎng)殖技術(shù)10-28