雖然今年的谷歌I/O大會沒有出現(xiàn)像去年谷歌眼鏡發(fā)布時直播瘋狂跳傘這樣的活動,但是上周仍然有不少產(chǎn)品推出。
谷歌宣布對谷歌地圖、搜索、安卓,以及其他很多產(chǎn)品做出更新,谷歌還花了一些時間談了談web組件。谷歌公司的Sundar Pichai指出,這項技術(shù)目前仍然處于初級階段,但他同時也說道,他認為“web組件的前景是非常明確的”,開發(fā)者可以利用這項技術(shù)開發(fā)出“可在各種形式下運行的用戶界面”。
對于眾多Chrome開發(fā)者而言,web組件顯然是一個距離Chrome核心最近的主題。舉個例子,在本周的一次爐邊會議上,許多業(yè)界人士都認為web組件是Chrome最主要的功能之一。
目前,許多谷歌工程師正在努力開發(fā)Project Polymer,這些工程師的目標,是編寫出一個網(wǎng)頁應用框架,程序員不僅可以在這個框架上構(gòu)建web組件,而且可以利用web組件,在瀏覽器上構(gòu)建出目前技術(shù)無法實現(xiàn)的一些功能。
在本屆谷歌I/O大會上,web組件技術(shù)已經(jīng)出露端倪,比如WebGL,還有其他一些已經(jīng)建立的網(wǎng)頁開發(fā)技術(shù)。非常明顯,谷歌相信,web組件技術(shù)正潛在地改變著程序員編寫未來網(wǎng)web應用的方式。
那么,這意味著什么呢?本質(zhì)上來說,web組件可以為程序員提供一種更簡單的方式,依靠HTML,CSS以及JavaScript這些已知的語言,他們可以構(gòu)建出網(wǎng)站,并能在網(wǎng)站上開發(fā)出可循環(huán)使用的小功能。而web組件背后的理念早已經(jīng)出現(xiàn)(數(shù)年前,微軟就支持過類似的創(chuàng)新,但是他們沒有成功),不過即使到今天為止,這項技術(shù)對大多數(shù)人而言仍然比較陌生。
通過智能組件模式構(gòu)建獨立頁面的大型網(wǎng)頁應用,在今天也并非易事。web組件可以幫助程序員封裝他們的HTML,CSS,以及JavaScript,這樣這些應用程序?qū)W(wǎng)頁上的其他功能就不會產(chǎn)生影響,同理,網(wǎng)頁上的其他功能也不會調(diào)停應用程序。
值得注意的是,程序員無法依靠組件在所有瀏覽器上工作。Chrome Canary包括了對web組件的支持,但是它是隱藏在許多flags屬性后面的。Mozilla也很有可能在最近增加其火狐瀏覽器的相關(guān)支持功能。最重要的是,谷歌的Polymer項目,就是希望可以利用他們開發(fā)polyfill框架,把web組件的概念應用在所有瀏覽器上。
網(wǎng)頁組件依靠四大件——模板元素,裝飾模式(decorators:將模板應用到CSS上),自定義元素(允許程序員創(chuàng)建自己的元素),以及Shadow DOM(雖然這個名字不怎么好聽,但是它真的只是定義了如何將不同的網(wǎng)頁部分拼湊在一起,而且在必要的時候,還能從常規(guī)DOM中保護其他三個網(wǎng)頁組件)
把上述四大件放在一起,包括自定義元素,程序員可以很快創(chuàng)建自己的HTML標簽,他們還可以擴展已有的元素。此外,web組件還能讓程序員更加便捷的分類內(nèi)容, Shadow DOM則確保了你創(chuàng)建的網(wǎng)頁樣式不會受到網(wǎng)站其他部分的調(diào)停,因為使用web組件創(chuàng)建的應用就可以做到這一點。
所有這一切,聽起來似乎不是那么豐滿,但是如果能抓住其核心(程序員沒有理由不抓住),這將會改變程序員編寫網(wǎng)頁應用的方式(谷歌的Eric Bidelman稱之為“網(wǎng)頁開發(fā)構(gòu)造性的改變”)。加上web組件固有的優(yōu)勢,也將進一步提升用戶的網(wǎng)頁瀏覽體驗。最后,雖然這代表了一種全新的網(wǎng)頁應用編寫方式,但在這場革命完成之前,業(yè)界可能還需要一些時間過渡。
想認識全國各地的創(chuàng)業(yè)者、創(chuàng)業(yè)專家,快來加入“中國創(chuàng)業(yè)圈”
|