為HTML 5的未來(lái)制定學(xué)習(xí)計(jì)劃
為了迎接HTML5的未來(lái),程序員們需要掌握哪些技能才可以應(yīng)對(duì)挑戰(zhàn)呢?本文 Justin James列出了程序員需要掌握的核心技術(shù)的學(xué)習(xí)計(jì)劃,以便跟上游戲規(guī)則的顛覆者HTML5的步伐。
利用Web技術(shù)進(jìn)行應(yīng)用開(kāi)發(fā)的趨勢(shì)已深入人心,甚至web瀏覽器以外亦是如此。最近披露Windows 8將會(huì)為編寫運(yùn)用HTML 5技術(shù)的應(yīng)用提供支持只不過(guò)是契合了其在開(kāi)發(fā)界的轉(zhuǎn)變而已。因此問(wèn)題是:你打算如何應(yīng)對(duì)?
如果你沒(méi)有在一直地密切跟蹤,很容易就會(huì)做出這樣的猜測(cè),為什么突然之間Web技術(shù)會(huì)扮演桌面應(yīng)用開(kāi)發(fā)平臺(tái)的角色。在正在定稿的HTML5標(biāo)準(zhǔn)里面,添加了一些新的項(xiàng)目,這些項(xiàng)目為HTML目前的文檔格式附加上了真正的應(yīng)用開(kāi)發(fā)能力。過(guò)去,龐大的JavaScript框架及瀏覽器插件是某些相當(dāng)瑣碎的功能之所需。
HTML5依靠添加對(duì)視頻流、多線程以及異步處理(通過(guò)“Web Workers”消息傳遞系統(tǒng))、利用套接字直接通信等的支持來(lái)改變這場(chǎng)游戲。盡管一個(gè)文檔格式標(biāo)準(zhǔn)擁有這些能力會(huì)嚇到某些人(包括我本人在內(nèi)),但是車輪滾滾,這仍是HTML 5的前進(jìn)方向,而且它還有蘋果、微軟、谷歌、Mozilla、Adobe等公司給它撐腰。此外,各種不同的框架的存在讓它能夠輕易地將Web應(yīng)用直接與后臺(tái)的Web服務(wù)連接起來(lái)。其結(jié)果是,對(duì)于許多任務(wù)來(lái)說(shuō),HTML 5現(xiàn)在跟Silverlight、Flash、Flex/AIR以及JavaFX等技術(shù)一樣出色(盡管在某些事情上那些仍做得更好)。
以下就是你希望學(xué)習(xí)來(lái)步入此門檻的技術(shù):
HTML 5: 盡管HTML5作為標(biāo)準(zhǔn)可能尚未完全確定,但是到了這個(gè)階段變動(dòng)不會(huì)太大了。目前,它已經(jīng)是可用的,并在相當(dāng)一些瀏覽器上有了實(shí)現(xiàn)。你現(xiàn)在可以開(kāi)始學(xué)習(xí)它了。
CSS: 如果你對(duì)CSS還不熟悉,現(xiàn)在正是學(xué)習(xí)它的大好時(shí)機(jī)。瀏覽器支持還在不斷完善,且現(xiàn)在IE6在市場(chǎng)的份額已經(jīng)很少,對(duì)此開(kāi)發(fā)人員已經(jīng)覺(jué)得可以放心地忽略不計(jì)。
Web services: 每一種主流的服務(wù)器端開(kāi)發(fā)語(yǔ)言都擁有一個(gè)框架或一套庫(kù),以便容易地生成web服務(wù),如.NET中的Windows Communication Foundation (WCF)。理解這些基礎(chǔ)應(yīng)該不需要花費(fèi)太多的學(xué)習(xí)精力。你也許特別希望學(xué)會(huì)如何生成JSON的輸出,此物正在迅速變成Web應(yīng)用的通用語(yǔ)。還有,確保你理解了RESTful Web服務(wù)。在現(xiàn)代的開(kāi)發(fā)環(huán)境下,相對(duì)于SOAP來(lái)說(shuō),盡管它們可能需要花費(fèi)更多的功夫,但是其可訪問(wèn)性可用性也要高得多。
JavaScript: 相對(duì)于傳統(tǒng)的ASP.NET或類似開(kāi)發(fā)需求來(lái)說(shuō),新的應(yīng)用開(kāi)發(fā)范式需要多一點(diǎn)JavaScript方面的知識(shí)。
.jQuery: jQuery已經(jīng)成為可用的客戶端開(kāi)發(fā)框架;它似乎可用包辦一切。在利用一組擴(kuò)展的插件的情況下,如果你想玩點(diǎn)UI的花樣,很可能jQuery能幫你忙。
這些技術(shù)現(xiàn)在構(gòu)成了若干不同的開(kāi)發(fā)系統(tǒng)的基礎(chǔ)。移動(dòng)網(wǎng)站就是一條好的途徑,靠它可用最少的功夫來(lái)達(dá)到最多的移動(dòng)用戶。像Appcelerator的Titanium那樣的工具允許你在若干平臺(tái)上(包括桌面和移動(dòng))在其系統(tǒng)之內(nèi)使用web技術(shù)。其他的系統(tǒng),像OutSystem的Agile Platform(免責(zé)聲明:我跟他們有一些關(guān)系,在我的信息披露中有解釋)打包了像jQuery這樣的庫(kù),使得開(kāi)發(fā)桌面或移動(dòng)web應(yīng)用變得極其簡(jiǎn)單。Windows 8,盡管細(xì)節(jié)仍很含糊,看起來(lái)似乎會(huì)拿IE9(或彼時(shí)的當(dāng)前版本)作為HTML 5的運(yùn)行環(huán)境,來(lái)充當(dāng)脫離明顯的瀏覽器窗口之外的本地應(yīng)用??梢酝茢?,這些應(yīng)用會(huì)擁有增強(qiáng)的特權(quán)來(lái)訪問(wèn)本地資源,也可能其行為會(huì)更像是本地應(yīng)用。
自學(xué)上述核心技術(shù)可謂聰明的一步,今年9月微軟的BUILD大會(huì)舉辦過(guò)后,我們就應(yīng)該了解到該公司Windoes 8的策略調(diào)整計(jì)劃,并能發(fā)現(xiàn)還有哪些東西需要我們?nèi)W(xué)。
聯(lián)系客服