互聯網的浪潮從未停息,而用以網上沖浪的沖浪板也一直在變得愈加精良。自人們進入互聯網時代以來,即已經發生了三次瀏覽器大戰。第一次瀏覽器大戰的主角是IE和Netscape,最終IE憑借著Windows的龐大身軀推倒了Netscape;第二次瀏覽器大戰Netscape浴火重生化身為火狐貍Firefox,一口咬了IE身上一大塊肥肉;正在Firefox和IE正纏綿不息之時,突然憑空殺出個Chrome——這名出身豪門Google的小伙子一下子成長得額外精壯,上串勢頭兇猛,追得兩位前輩嬌喘吁吁。
Chrome正在猛擊兩位前輩
這位Chrome究竟是何方人物,能練就如此神功,在短短幾年內就成為互聯網瀏覽的一大主流,市場份額趕超了Firefox不說,甚至還曾在短時間內壓過了微軟帝國的IE,形成天下三分的第三次瀏覽器大戰的格局?
Chrome已在市場份額上擊敗了Firefox
Chrome的血統
出于好奇,不少人都八卦了一下Chrome的來歷,然后發現Chrome的背后深藏著Webkit這個名字。對瀏覽器有所研究的朋友,應該也會或多或少地聞過Webkit的大名。Webkit源于KDE開源項目,興盛于蘋果公司的Safari項目,它身上有諸多創新,近年來風行的HTML5以及CSS3潮流都和Webkit脫不開關系。Webkit小巧、靈活但又十分強大,而且源代碼開放,深得業界喜愛。從諾基亞S60上的瀏覽器,到價比腎貴的iphone上的Safari,我們都能看到Webkit的身影。
Webkit(左)和Safari的logo,一看就孽緣深
Google從來都不是嗅覺遲鈍的公司,Webkit的優秀自然也吸引了這位互聯網梟雄的眼光。2008年9月,Google發布了Chrome的測試版,Chrome面世了。Chrome使用了Webkit的代碼,繼承了Webkit的優良排版引擎,渲染頁面速度驚人。
Chrome首個測試版
既然Chrome使用了Webkit的源代碼,也使用了Webkit的排版引擎,那么我們是否就可以認為,Google只是在Webkit上面加了一層殼就做出了Chrome呢?
Chrome的基因突變
Chrome是Webkit的馬甲,這種說法并不準確。實際上Webkit由兩部分組成,一部分是WebCore排版引擎,用以解析HTML語言和 CSS框架;另一部分為JSCore javaScript執行引擎,用以執行網頁JS腳本。Chrome只是繼承了Webkit的WebCore部分,在JS引擎上使用了Google引以為豪的“V8”引擎,大大地提高了腳本執行速度,這也是為什么Chrome會如此快的重要原因。
Webkit包括WebCore和JSCore
不僅如此,Chrome還在Webkit上封裝了一層Webkit Glue,Chrome中只調用Webkit Glue層的接口使用Webkit組件。與此同時,Chrome的源代碼和Webkit也有了很大區別,Google對Webkit的源代碼重新進行了梳理,使代碼的可讀性更好,編譯效率更高,并擁有自己的開源項目——Chromium。
Chromium和Chrome:試制品和成品
既然提到了Chromium,這里就順帶談一下Chromium和Chrome的區別。不知道從什么時候開始,流行著這樣一種說法——Chrome開源。這是錯誤的。Chrome并非一款自由軟件,也沒有開放源代碼。甚至和Firefox比起來,Chrome還很封閉——因為它無法提供像Firefox一樣繁多而高權限的應用接口,這使得Chrome在擴展以及界面定制方面都不如Firefox自由。那Chrome是開源軟件一說何來之有?
Firefox十分開放
之所以這種說法,多是因為人們把Chrome和Chromium搞混了。雖然名字很像,圖標界面功能什么的都差不多,也同樣隸屬于Google,但事實上這兩者真的不同。Chromium是一款自由軟件,遵循BSD許可證開源,開發者可以使用Chromium的源代碼進行開發。我們可以認為 Chromium是Google為了發展Chrome而開啟的開源計劃,Chromium相當于Chrome的實驗開源版。兩者功能也有微妙的差異,Chrome比Chromium多了PDF閱讀器、Flash Player及Google Update等一些小部件。
Chromium(左)和Chrome
簡單來說,Chromium是一個實驗項目,Chrome則是一件商品。開發者所能使用的代碼只能是開源的Chromium,而不會是閉源的 Chrome。若聽到有人說,某某瀏覽器基于Chrome內核,速度快得很!這時候我們應該知道,這款瀏覽器實際上使用的是Chromium內核。
廣受歡迎的Chromium
目前使用Chromium內核的著名國產瀏覽器有360極速瀏覽器、搜狗瀏覽器、世界之窗瀏覽器極速版等等,為數不少。但我們發現,在國內雖然Chromium內核很受瀏覽器廠商歡迎,但是更原始的Webkit卻幾近無人問津。這又是為何?
人們更熱衷于Chromium
當然這也是有原因的。前面提到,Google對Webkit的代碼重新梳理,Chromium代碼的可讀性和編譯效率遠比Webkit高。對比 Chromium的代碼,Webkit的代碼堪比天書,開發難度高得多。Webkit這貨不是你想弄,想弄就能弄的啊。更何況Chromium的V8 JS引擎比Webkit的JSCore效率更高,好用又強大的東西干嘛不用呢。
鑒于Chromium和Webkit擁有較大的區別,我們不應該單純地認為Chrome/Chromium只是在Webkit上面套一個馬甲。給Google的工程師們一些掌聲吧,因為他們的優秀和努力,世界上多了一個優異的瀏覽器內核。
新聞熱點
疑難解答