2011年Web Apps發(fā)展?fàn)顩r大盤點(diǎn)
從HTML 5開始興起之后,在移動平臺上Web Apps是否能夠和Native Apps一較高下,甚至Web Apps是否可能取代Native Apps的紛爭開始興起。不管現(xiàn)在Web Apps的能力如何,在業(yè)界,對于Web Apps在跨平臺應(yīng)用開發(fā),游戲開發(fā)等各種嘗試已經(jīng)興起。
51CTO推薦專題:移動Web開發(fā)指南
在2011年初,筆者就曾經(jīng)拋出過Web Apps會在未來得到大力發(fā)展的觀點(diǎn),原因有三:
◆ 從商業(yè)的角度來看,因?yàn)殚_發(fā)成本的原因,會推動Web Apps會贏得更多項(xiàng)目的訂單,從而會推動更多的開發(fā)者和更多的Web Apps項(xiàng)目出現(xiàn)。
◆ 從技術(shù)的角度來看,HTML 5的標(biāo)準(zhǔn)推動以及硬件的處理能力會使得Web Apps有能力實(shí)現(xiàn)類似Native Apps的功能。
◆ 從歷史的角度來看,移動互聯(lián)網(wǎng)上會復(fù)制PC互聯(lián)網(wǎng)上所曾經(jīng)發(fā)生的事情,而今PC上基于Web的開發(fā)遠(yuǎn)勝于傳統(tǒng)的Native App開發(fā)。
那么,一年過去了, Web Apps的發(fā)展情況如何?
規(guī)范及標(biāo)準(zhǔn)
盡管規(guī)范及標(biāo)準(zhǔn)并非是推動技術(shù)方案的絕對因素,但對指引方向,確定開發(fā)架構(gòu)有非常大的幫助。在互聯(lián)網(wǎng)企業(yè)分布式架構(gòu)興起時(shí),J2EE所制定的規(guī)范和標(biāo)準(zhǔn)就曾經(jīng)扮演過這樣的角色。盡管在后來實(shí)際發(fā)展的過程中,完全依據(jù)官方的標(biāo)準(zhǔn)的實(shí)現(xiàn)并未占據(jù)主導(dǎo)地位,反而是spring等輕量級的實(shí)現(xiàn)獨(dú)領(lǐng)市場風(fēng)騷。但無論如何,標(biāo)準(zhǔn)和規(guī)范的建立依然對一個新的領(lǐng)域的興起有著積極的指導(dǎo)意義。
Web Apps并不是一個太新的概念。在Web發(fā)展的過程中,業(yè)界就在思考web不僅作為一種展現(xiàn)的方式,同時(shí)也成為一種開發(fā)平臺的可能。早在2004年 Web Hypertext Application Technology Working Group (WHATWG) 就在開始著手準(zhǔn)備web application的標(biāo)準(zhǔn)和建立。與此同時(shí)W3C期望發(fā)展則是XHTML 2.0。 如大家所知道的2009年W3C放棄了改進(jìn)XHTML 2.0的標(biāo)準(zhǔn)發(fā)展?,F(xiàn)在W3C和WHATWG一起在攜手修訂和發(fā)展HTML 5的規(guī)范。
在這份新的規(guī)范中:
1. W3C致力于對HTML 5的展示層面,包括很多新的元素的制定。具體可以參見這里。
2. WHATWG致力在開發(fā)的角度進(jìn)行改進(jìn),參見這里。
在這兩份標(biāo)準(zhǔn)中承載了太多的內(nèi)容,以至于瀏覽器廠商很難在短時(shí)間內(nèi)完成或全部接受。但是根據(jù)HTML 5標(biāo)準(zhǔn)的一個編輯,Ian Hickson的說法,預(yù)計(jì)到2012年可以達(dá)到候選推薦版的地步( http://en.wikipedia.org/wiki/HTML5 )。實(shí)際上根據(jù)WHATWG工作組的說法,“事實(shí)上有很多部分已經(jīng)穩(wěn)定,并且接近完成,這些標(biāo)準(zhǔn)現(xiàn)在已經(jīng)可用了,比如<canvas>”( http://en.wikipedia.org/wiki/HTML5 )。
事實(shí)上在2011年,各種基于canvas的HTML 5游戲已經(jīng)開始暫露頭角。網(wǎng)上也開始流傳據(jù)說是EA發(fā)布的命令與征服HTML 5版本的游戲宣傳片( http://www.youtube.com/watch?v=cYsb8iMz5fE&noredirect=1 ).
在筆者看來,2011年,標(biāo)準(zhǔn)并沒有成為限制HTML 5發(fā)展的一個大問題,反到是業(yè)界各方都在挖掘HTML 5的潛力,并推動HTML 5的發(fā)展。
事實(shí)上在2011年,各種基于canvas的HTML 5游戲已經(jīng)開始暫露頭角。網(wǎng)上也開始流傳據(jù)說是EA發(fā)布的命令與征服HTML 5版本的游戲宣傳片( http://www.youtube.com/watch?v=cYsb8iMz5fE&noredirect=1 ).
在筆者看來,2011年,標(biāo)準(zhǔn)并沒有成為限制HTML 5發(fā)展的一個大問題,反到是業(yè)界各方都在挖掘HTML 5的潛力,并推動HTML 5的發(fā)展。
產(chǎn)業(yè)支持
標(biāo)準(zhǔn)之爭,本質(zhì)上也就是產(chǎn)業(yè)巨頭之間的利益分配戰(zhàn)爭。2010年4月,喬布斯公開發(fā)表Thoughts on flash (“ http://www.apple.com/hotnews/thoughts-on-flash/ “) 一文,公開宣稱Flash以及不再為瀏覽視頻或者其他web內(nèi)容所必須。
如大家所熟知,在iPhone上Flash壓根就不能被運(yùn)行,但iOS的系列產(chǎn)品并未因此而受到任何影響。不僅僅如此,微軟基本放棄了增強(qiáng)瀏覽器功能的Sliverlight,全面擁抱HTML 5。更勿論在不遺余力推動HTML 5發(fā)展的Google。在各種巨頭的夾擊之下,Adobe也在2011年主動(或者說被迫)地放棄了Flash在移動設(shè)備上的支持。因此,從產(chǎn)業(yè)支持上來看,有能力做平臺,做移動設(shè)備的三大廠商,Google, Apple, Microsoft都已經(jīng)全面開始了對HTML 5的支持。
不僅僅如此,各大廠商還在充分利用GPU的特性來幫助到瀏覽器的渲染,這更將會推動HTML 5在技術(shù)上和實(shí)踐上的成熟,從而得到更多開發(fā)者的支持。而微軟在windows 8上直接讓javascript可以編寫原生的程序,IE10.0里更是改進(jìn)了非常多支持(http://www.cnbeta.com/articles/167580.htm )
開發(fā)平臺
技術(shù)能夠得到廣泛的推廣和應(yīng)用,不僅和標(biāo)準(zhǔn)和廠商的支持有關(guān),更多地在于是否能夠吸引到足夠多的開發(fā)者使用相關(guān)的平臺和技術(shù)開發(fā)應(yīng)用。Microsoft的操作系統(tǒng)到現(xiàn)在依然占據(jù)絕對壟斷地位,這和其在開發(fā)平臺上的推廣投入巨大不無關(guān)系。那么對于HTML 5的發(fā)展來說呢?
在筆者看來,如果對比傳統(tǒng)的軟件開發(fā),把HTML 5作為一個web的開發(fā)平臺來說,需要有如下幾個方面的開發(fā)工具和平臺支持:
1. UI制作工具。各種IDE工具都以非常強(qiáng)大的界面拖放工具,事件綁定方式來支持UI的開發(fā),減少程序員的工作量。
2. 數(shù)據(jù)交互組件。絕大部分的業(yè)務(wù)邏輯,都是和數(shù)據(jù)通訊有關(guān)。在各種平臺上,簡化數(shù)據(jù)交互的組件都不可或全。比如.NET中的ADO.NET。
3. 強(qiáng)大的IDE。如大家所熟知的VS.NET, Eclipse等等。
4. 各種開發(fā)庫的支持。
在web apps的開發(fā)中,我們可以看到目前的狀況
1. 瀏覽器中的開發(fā)調(diào)試工具開始組件成熟和強(qiáng)大。不管是Chrome還是IE自帶的,還是Firebug等第三方的調(diào)試工具。調(diào)試和開發(fā)CSS/Javascript的難度已經(jīng)減少很多。未來這一部分依然會得到足夠的發(fā)展。
2. 開發(fā)的模式。如現(xiàn)在Web Apps的標(biāo)準(zhǔn)定義所期望的,離線處理能力,網(wǎng)絡(luò)請求能力(web socket/web works)等。這一切依然需要新的標(biāo)準(zhǔn)和定義。
3. IDE的工具,VS.NET/Eclipse有足夠地理由會進(jìn)一步增強(qiáng)對web開發(fā)的支持。
4. 各種庫的支持。目前sencha, jQuery已經(jīng)開始,未來應(yīng)該會有更多的支持。
除此之外,為解決HTML 5不足以訪問系統(tǒng)資源的問題,類似于PhoneGap這樣的解決方案,可以通過混搭的方式來拓展web apps的處理能力。
開發(fā)者社區(qū)
社區(qū)對新技術(shù)的推動和推廣作用是巨大的,在各種開源的工具的完善和推廣,以及新語言的推動和誕生,都離不開開發(fā)者社區(qū)的支持和推動。事實(shí)上,業(yè)界媒體對技術(shù)的支持可謂不遺余力,在wall street journal這樣的老牌媒體中已經(jīng)開始對web app的關(guān)注(http://blogs.wsj.com/digits/2011/06/16/fts-web-app-strategy-thwarts-apple-store/ )。 Read write web這樣的媒體,網(wǎng)頁的標(biāo)題就是“web apps, web technology trend, Social networking and social media” 。
不僅僅是海外社區(qū)的支持,按照規(guī)律來說技術(shù)的推動一般比海外會晚兩年的國內(nèi)來說,對web app的支持和推動也以及如火如荼。在2011年出,國內(nèi)對HTML 5發(fā)展探討的社區(qū)開始興起。發(fā)展頗快的HTML 5研究小組的線下活動組織的如火如荼,而以專業(yè)分析web apps的web app trend這樣的博客對web app的趨勢分析,發(fā)展?fàn)顩r的內(nèi)容更是非常翔實(shí)和專業(yè)。有理由相信2012年,國內(nèi)外的社區(qū)對此的支持會更大。
開發(fā)理念
開發(fā)理念對一門新的領(lǐng)域發(fā)展的推動作用指導(dǎo)意義重大。設(shè)計(jì)模式一詞, 就影響了各種各樣的開發(fā)者。而對于移動設(shè)備上的web app發(fā)展來說,同樣需要新的開發(fā)理念出現(xiàn)。由于移動設(shè)備的特殊性,移動設(shè)備的顯示模式,交互方式都和PC上延續(xù)了30多年的方式不同,因此,不可避免地需要有新的針對于移動設(shè)備的設(shè)計(jì)理念,開發(fā)思路出現(xiàn)。
從國內(nèi)外來看,市面上已經(jīng)開始出現(xiàn)探討移動設(shè)備開發(fā)理念的書籍,比如Mobile first,通過大量的事例以及交互方式來探討Mobile上的設(shè)計(jì)思路。而Responsive Web Design更是開始開創(chuàng)了對web交互方式的探討。有理由相信在2012年,類似的web design探討會越來越多,理論和***實(shí)踐也會越來越豐富。
商業(yè)相關(guān)
技術(shù)和商業(yè)往往是密不可分的,技術(shù)上的革新會推動商業(yè)上的發(fā)展,商業(yè)的需求同時(shí)也會促發(fā)技術(shù)上的創(chuàng)新。對于web apps在移動設(shè)備上的創(chuàng)新來說同樣也是如此。
對于web apps這樣的新概念來說,早期開發(fā)者的支持和推動才可能會進(jìn)一步技術(shù)決策者在技術(shù)選型以及后期商業(yè)上的決策。在web app的技術(shù)上來說,因?yàn)镻honeGap以及和Sencha這樣的技術(shù)出現(xiàn),使得web app在跨平臺以及利用移動設(shè)備的能力進(jìn)一步增強(qiáng)。而由于同樣使用javascript, 使用phonegap的難度并不高。
在2011年,國內(nèi)的開發(fā)者已經(jīng)開始敏銳地看到相關(guān)技術(shù)的興起,PhoneGap中國等網(wǎng)站也開始積極在國內(nèi)推動PhoneGap技術(shù)的推廣以及應(yīng)用,盡管2011年尚未看到成功案例的出現(xiàn),但是一旦技術(shù)成熟或者有大的成功案例出現(xiàn),國內(nèi)大規(guī)模網(wǎng)站往移動設(shè)備上轉(zhuǎn)的需求講會推動,目前利用web技術(shù)開發(fā)網(wǎng)站的開發(fā)者會積極轉(zhuǎn)型,在2012年接受web app來開發(fā)程序的開發(fā)者會越來越多。
從全球范圍來說,目前web app在商業(yè)應(yīng)用的***成功案例就是Finance Time的web apps,短短的幾個月之內(nèi)已經(jīng)突破了百萬用戶,其表現(xiàn)能力已經(jīng)和Native App的品質(zhì)相當(dāng)。
而在國內(nèi),目前僅有部分的嘗試以及探索,并沒有出現(xiàn)大量的應(yīng)用。然而,另外一個方面來說,HTML 5游戲的發(fā)展反到比web app的發(fā)展速度快很多。因此,2011年FT的web apps成為了web apps發(fā)展過程中唯一的亮點(diǎn),但足以證明技術(shù)的成熟,有理由相信在2012年會有更多有創(chuàng)意的web apps誕生。
總結(jié)
縱觀2011年web apps的發(fā)展,不難發(fā)現(xiàn)。技術(shù),標(biāo)準(zhǔn)的成熟以及發(fā)展速度比大家想像的快很多,而Adobe在如此之短的速度內(nèi)放棄移動設(shè)備上的Flash也足以讓人吃驚,產(chǎn)業(yè)巨頭不遺余力的技術(shù)推廣和發(fā)展,讓人有足夠的理由相信web apps會伴隨HTML 5的發(fā)展而興起,而在開發(fā)工具的不足,商業(yè)成功案例的缺乏,也導(dǎo)致了web apps的破冰的速度不夠快。但PhoneGap這樣的技術(shù)會推動web + Native的混搭架構(gòu),組建推動web apps的發(fā)展。
未來的幾年是移動設(shè)備高速發(fā)展的幾年,同樣也是技術(shù)創(chuàng)新會大規(guī)模應(yīng)用的時(shí)間,有理由相信沒準(zhǔn)基于HTML 5的Web App會有新的開發(fā)模式,甚至于不同于App Store的新盈利模式出現(xiàn)。
原文鏈接:http://www.leiphone.com/web-apps-2011.html
【編輯推薦】