|
未來,“用戶體驗(yàn)”將成為所有軟件商業(yè)價(jià)值的首要衡量標(biāo)準(zhǔn)。擁有極好用戶體驗(yàn)的RIA(富互聯(lián)網(wǎng)應(yīng)用)技術(shù)近些年來發(fā)展迅猛,其中以Silverlight、HTML5及Flash最受熱捧。縱觀,互聯(lián)網(wǎng)上98%的計(jì)算機(jī)都有安裝Flash;HTML5的新特性則強(qiáng)化了Web網(wǎng)頁的表現(xiàn)力;Silverlight更是攜帶著高性能與高生產(chǎn)力等諸多優(yōu)勢異軍突起。RIA技術(shù)領(lǐng)域逐漸顯露三足鼎立之勢。
Flash發(fā)展至今已有15年歷史,時(shí)間長河使之在全球孕育了大規(guī)模熱衷于網(wǎng)頁矢量動(dòng)畫的設(shè)計(jì)者與開發(fā)者,以及讓無數(shù)商家垂涎的插件裝機(jī)量。在Macromedia和 Adobe的號召下,無數(shù)優(yōu)秀的藝術(shù)家、UI設(shè)計(jì)師和互動(dòng)程序設(shè)計(jì)師團(tuán)結(jié)一起,最終成就了今天全盛時(shí)期的Flash。
ActionScript是Flash最主要的編程語言,作為當(dāng)下主流的RIA技術(shù),Flash十?dāng)?shù)年的積累使其擁有極深的根基,Flash的主導(dǎo)地位短時(shí)間內(nèi)很難被撼動(dòng)。然而,問題都是相對的,時(shí)間的沉淀伴隨而來的是漏洞百出,Flash的濫用和參差不齊的Web前端開發(fā)人員造成了當(dāng)前很多網(wǎng)頁中的Flash應(yīng)用效率低下,瀏覽器極易崩潰等問題;插件越來越臃腫卻依舊無法改變封閉的SWF對搜索引擎的不友好支持。更讓諸多Flash Fans傷心的是,蘋果方面明確地排斥Flash,從ios到MacBook Air 2010都能看到厭煩的身影,或許Flash真已漸入中年。
HTML是目前網(wǎng)絡(luò)上應(yīng)用最為廣泛的語言,也是構(gòu)成網(wǎng)頁文檔的主要語言。HTML4標(biāo)準(zhǔn)已經(jīng)十多年了,隨著世界IT技術(shù)的飛速發(fā)展,各類軟件和平臺的不一致性驟增,至今我們還得繼續(xù)兼容IE6下的CSS樣式名,開發(fā)差異化的產(chǎn)品,卻要提供同質(zhì)化的功能,多瀏覽器、多平臺上的兼容測試依舊是無數(shù)網(wǎng)頁設(shè)計(jì)者心中永恒之痛,HTML4在各類平臺上所受到的諸多限制使得HTML5呼之欲出。于是,2004年HTML5第一次被WHATWG提出,2007年最終為W3C所接納。內(nèi)置Canvas、Audio/Video以及Web存儲等諸多新特性的HMTL5未來將會引領(lǐng)互聯(lián)網(wǎng)多方面的改進(jìn)與革新,依舊利用HTML + JavaScript + CSS使得普通網(wǎng)站也能輕松具備更豐富的功能,被世界所公認(rèn)真正做到跨平臺的技術(shù)。
然而,看似美好的HTML5卻注定一身坎坷,從它出生開始就已被Google所挾持企圖號令天下。Google的云計(jì)算帝國就差一個(gè)RIA的支持,本被高度期望的Gears還未足月即宣布夭折,旨在為HTML5的登基做鋪墊,不由得讓我們更極端的思考:假若 HTML5真能普及,更多的應(yīng)用轉(zhuǎn)向B/S模式,微軟帝國的桌面軟件生態(tài)環(huán)境必定遭受巨大威脅,虎視眈眈多年的Google將是最大受益者,Chrome OS操作系統(tǒng)即是最給力的證據(jù)。
長遠(yuǎn)看,作為Google玩轉(zhuǎn)于指尖的一枚棋子,HTML5終究還是無法取代Silverlight或Flash等網(wǎng)頁插件技術(shù)。如果我是項(xiàng)目經(jīng)理,我會否決一切完全依賴于HTML5的項(xiàng)目,只因?yàn)槲覍?shí)在無法忍受耗資巨大的項(xiàng)目源碼卻能如此輕易的被對手剽竊、掠走,好比敞開著你家的保險(xiǎn)柜丟在馬路中央,難道你在期待開源組織給予你至高無上之敬意?再說了,HTML5在開發(fā)效率和開發(fā)工具上著實(shí)顯得捉襟見肘,且很難實(shí)現(xiàn)網(wǎng)頁插件所能輕松實(shí)現(xiàn)的高級功能,而網(wǎng)頁插件則擁有比HTML5更靈活的框架,整體性能更好,還具備跨瀏覽器(不同瀏覽器下無差異體驗(yàn))等優(yōu)勢。另外,HTML5若要真正應(yīng)用到商業(yè)領(lǐng)域,前提是其規(guī)范必須得到統(tǒng)一。可現(xiàn)狀令人堪憂,微軟的IE、Mozilla的Firefox以及主導(dǎo)者Google的Chrome當(dāng)下都在極力的爭奪HTML5標(biāo)準(zhǔn)制定方面的最強(qiáng)話語權(quán),利益驅(qū)使下的HTML5標(biāo)準(zhǔn)統(tǒng)一5至10年內(nèi)依舊一片浮云,對于Silverlight和Flash來說這么漫長的時(shí)間已足夠開發(fā)出幾代新版本了,同時(shí)亦印證了W3C對當(dāng)前HTML5/CSS3標(biāo)準(zhǔn)現(xiàn)狀的表述:“不適宜用作生產(chǎn)環(huán)境”。
新秀Silverlight是微軟所發(fā)展的Web前端應(yīng)用程序開發(fā)解決方案,2007年9月這個(gè)奇跡般的小子橫空出世,給本已混亂的Web市場再添一大變數(shù)。Silverlight最大的特點(diǎn)在于它精簡的.NET框架,你可以使用C#、VB、F#這3大.NET主流開發(fā)語言去編寫Silverlight應(yīng)用程序。Silverlight的開發(fā)者大多來自傳統(tǒng)的.NET產(chǎn)品研發(fā)一線,擁有國際頂尖的架構(gòu)經(jīng)驗(yàn)和豐富的設(shè)計(jì)模式知識,在VisualStudio以及Blend等強(qiáng)大開發(fā)工具的協(xié)同支持下,高性能、高開發(fā)效率等諸多優(yōu)勢顯露無疑。Silverlight的應(yīng)用主要集中在電子商務(wù)、視頻、網(wǎng)頁網(wǎng)絡(luò)游戲,衛(wèi)星定位、導(dǎo)航、地理系統(tǒng)等領(lǐng)域,作為微軟“三屏一云”計(jì)劃(電腦屏幕、手機(jī)屏幕和電視屏幕以及云計(jì)算)的核心技術(shù),伴隨著近期Window Phone 7的發(fā)布,我們已能隱約感受到未來Silverlight“三端(網(wǎng)頁、桌面和移動(dòng)設(shè)備)一統(tǒng)”的局面。
Silverlight發(fā)展至今短短3年多,僅為HTML5設(shè)計(jì)時(shí)間的一半就推出了四個(gè)主要版本,仍在研發(fā)中的第五個(gè)版本即Silverlight 5 的新特性已經(jīng)公開,2011年上半年將會發(fā)布Beta版。Silverlight在其發(fā)展過程中充分吸收其他競爭對手的優(yōu)點(diǎn),取長補(bǔ)短,利用GPU硬件加速大幅提升2D/3D應(yīng)用程序性能,同時(shí)突破了Flash無法使用右鍵的功能限制,還能通過脫離瀏覽器的模式(Out of Browser)運(yùn)行于系統(tǒng)桌面(超越瀏覽器),以及作為Windows Phone等移動(dòng)設(shè)備的主要開發(fā)技術(shù),外加其開源框架Moonlight的跨平臺特性,使得Silverlight在RIA領(lǐng)域的優(yōu)勢日益明顯。不久,Silverlight 5或?qū)е鴮?span lang="EN-US">3D模型及骨骼動(dòng)畫的原生態(tài)支持問世,網(wǎng)頁技術(shù)即將翻開嶄新的一頁 – Web 3D時(shí)代的來臨。
我們可以打這么一個(gè)比方,如果把Flash看做一只銀行股,那么HTML5就是只題材股,厚積薄發(fā)的Silverlight則是名副其實(shí)的潛力股。就目前而言,這三者都在不斷壯大中,各有各的優(yōu)勢與契機(jī)且相互制衡著,短時(shí)間內(nèi)并不存在誰取代誰的問題。微軟開發(fā)平臺產(chǎn)品經(jīng)理Brad Becker也曾說過:“在網(wǎng)絡(luò)上,Silverlight從沒打算要取代HTML5,而是要做HTML5和其它技術(shù)不能讓開發(fā)人員輕易做到的事情。”
論發(fā)展速度,Silverlight有趕超Flash之勢,HTML5則更多體現(xiàn)的是某些廠商試圖改變軟件生態(tài)格局的發(fā)展戰(zhàn)略需求。當(dāng)然,撇開三者的紛爭不論,所有的RIA技術(shù)都只為同一目的而存在著:讓互聯(lián)網(wǎng)絢動(dòng)起來!RIA盛世降臨,你準(zhǔn)備好了嗎?
本文發(fā)表于《程序員》2011年01期,有刪節(jié)和修改
it知識庫:Silverlight HTML5 Flash - RIA技術(shù)之三足鼎立,轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時(shí)間聯(lián)系我們修改或刪除,多謝。