Web前端技術(shù)進(jìn)化論 HTML 5時(shí)代來臨
今年MIX10大會(huì)上微軟的工程師在介紹IE9時(shí),從前端技術(shù)的角度把互聯(lián)網(wǎng)的發(fā)展分為三個(gè)階段:第一階段是Web 1.0的以內(nèi)容為主的網(wǎng)絡(luò),前端主流技術(shù)是HTML和CSS,第二階段是Web 2.0的Ajax應(yīng)用,熱門技術(shù)是Javascript/DOM/異步數(shù)據(jù)請(qǐng)求,第三階段是即將迎來的HTML 5時(shí)代,亮點(diǎn)是富圖形和富媒體內(nèi)容(Graphically-Rich and Media-Rich)。
51CTO推薦專題: HTML 5 下一代Web開發(fā)標(biāo)準(zhǔn)
Web 2.0時(shí)代把大量服務(wù)從桌面轉(zhuǎn)移到網(wǎng)絡(luò)上,B/S架框的應(yīng)用迅速流行起來,這個(gè)時(shí)期Ajax和Javascript框架得到廣泛的應(yīng)用。網(wǎng)站成為提供Web服務(wù)的主要形式,但隨著智能手機(jī)和3G網(wǎng)絡(luò)的普及,手機(jī)應(yīng)用和手機(jī)上的Web應(yīng)用將會(huì)成為新的產(chǎn)品形態(tài)。原有的互聯(lián)網(wǎng)產(chǎn)品需要對(duì)各種形式的終端提供友好的展現(xiàn)形式。
比如豆瓣電臺(tái)(douban.fm)目前就有網(wǎng)頁版、iPhone版、Android版、不久還會(huì)看到HTML 5版和桌面版。網(wǎng)絡(luò)逐漸變成一個(gè)傳輸和存儲(chǔ)數(shù)據(jù)的透明倉庫,向不同形式的產(chǎn)品終端輸送數(shù)據(jù)。而且這個(gè)數(shù)據(jù)內(nèi)容將會(huì)非常豐富,這就是微軟眼中的富圖形和富媒體內(nèi)容,所以,IE9必須、也不得不支持SVG和HTML 5的Video和Audio。
蘋果推出iPad無疑又是一場革命,在擁有更大的多點(diǎn)觸摸屏幕的終端上跑智能手機(jī)系統(tǒng),把硬件成本降到一個(gè)足夠低的程度,我想iPad和類似的平板電腦將會(huì)流行起來。同時(shí)也意味著,產(chǎn)品前端又增加一種形態(tài)。
PC上的Web應(yīng)用受瀏覽器歷史原因的束縛太大,在國內(nèi)IE6等低端瀏覽器目前仍占據(jù)絕大多數(shù)的市場份額。因此這些不稱職的平臺(tái)需要靠第三方插件來彌補(bǔ)先天的不足,像Flash/Flex、Silverlight、JavaFx等,包括Google Chrome,本質(zhì)上都是為了彌補(bǔ)瀏覽器的缺陷,當(dāng)瀏覽器足夠強(qiáng)了也就不需要這些插件了。智能手機(jī)出現(xiàn)的比較晚,所以完全沒有歷史包袱。
現(xiàn)在的智能手機(jī)系統(tǒng)iPhone OS和Android加起來就占了90%以上的市場份額,默認(rèn)的瀏覽器都是基于Webkit內(nèi)核的HTML瀏覽器,對(duì)HTML 5和CSS3的支持比較好。這讓HTML 5和CSS3有了最佳實(shí)踐的機(jī)會(huì)。產(chǎn)品形態(tài)向不同終端轉(zhuǎn)變的成本因此大大降低了。這是HTML5技術(shù)升溫的原因。
比如iPhone上的Mobile Safari瀏覽器支持HTML 5的Canvas/Canvas2D、Video、Audio、Geolocation、Local Storage/Session Storage、Application Cache、Web SQL Database等,CSS3的3D/2D動(dòng)畫、RGBA、圓角、陰影和漸變等主要功能都支持。用你的手機(jī)瀏覽器訪問http://html5test.com,可以測(cè)試一下都具體支持哪些。利用這些特性加上傳統(tǒng)的Javascript/HTML/CSS就可以打造一個(gè)很強(qiáng)悍的Web應(yīng)用。
Paul Graham在2005年Web2.0時(shí)代來臨時(shí)曾說“Javascript now works”,那現(xiàn)在可以說“HTML 5 now works”了。HTML 5發(fā)揮作用同時(shí),也意味著HTML5&CSS3將成為前端開發(fā)者的必修技能。
HTML 5和Flash之間的討論前段時(shí)間很熱。插件技術(shù)本身是在原生技術(shù)滿足不了的情況下才會(huì)使用。在學(xué)習(xí)路線上,HTML/CSS/Javascript到HTML5/CSS3將是前端開發(fā)者的必修課,插件技術(shù)永遠(yuǎn)是選修課。Flash CS5將支持導(dǎo)出HTML 5的Canvas,可見Adobe畢竟是一家軟件公司,它會(huì)想辦法實(shí)現(xiàn)不同技術(shù)之間轉(zhuǎn)換和包容,有人說也許幾年后Flash會(huì)成為Canvas開發(fā)工具,我們只需坐享其成。像從Flash到Flex再到AIR的發(fā)展過程中可見一斑。
做為前端開發(fā)者來說,一定要身兼多技,但務(wù)必要先學(xué)好必修課。很多公司會(huì)設(shè)置一些專一性技術(shù)的職位,比如Flash開發(fā)工程師,這會(huì)誤導(dǎo)一些人只學(xué)Flash,對(duì)日后的職業(yè)發(fā)展很不利。套句老話“形勢(shì)喜人,形勢(shì)逼人”,前端技術(shù)越來越豐富,前端開發(fā)者的擔(dān)子越重,越多東西要學(xué)。
【編輯推薦】















 
 
 





 
 
 
 