天天看點

《深入了解Android》一2.2 浏覽器和WebKit簡史

本節書摘來自華章出版社《深入了解android》一書中的第2章,第2.2節,作者孟德國 王耀龍 周金利 黎歡,更多章節内容可以通路雲栖社群“華章計算機”公衆号檢視

和html标準相伴至今,浏覽器從無到有,從簡單到複雜,經曆了許多變化,内容越發豐富,功能日益強大。

第一個浏覽器也是由world wide web發明人tim berners-lee于1990年發明,恰好最開始它的名字就叫world wide web,後來為避免浏覽器軟體與網際網路技術重名而改稱nexus。第一個易于使用并大規模流行的浏覽器是marc andreesen于1993年發明的mosaic,他又成立了網景公司,在1994年推出了赫赫有名的netscape navigator浏覽器。微軟在網際網路争奪戰中後發制人,在internet explorer浏覽器免費綁定進windows 95系統,最終赢得了第一次浏覽器世界大戰。至2000年初,因windows 98、windows xp和ie 5.0、6.0等一系列産品的成功釋出,微軟在浏覽器市場佔有率上的壟斷地位業已形成。

1998年,網景公司成立了mozilla組織,正式将其浏覽器代碼開源,成為open source和浏覽器發展史上又一重要裡程碑。mozilla幾經磨煉,于2004年又成功推出了擁有多标簽浏覽、add-on擴充等特色功能的firefox浏覽器,一時風靡世界,從ie手中又奪回了不少市場佔有率,拉開了第二次浏覽器世界大戰的序幕。

2003年以後,随着蘋果公司的王者歸來和google的快速崛起,浏覽器和整個it界都發生了深刻而不可逆轉的變化。蘋果公司mac os和ios作業系統開發的safari浏覽器最終借鑒采納了kde桌面khtml排版引擎,并組織成立了webkit開源項目和基金會,強有力地推動了浏覽器排版引擎的發展。靠搜尋引擎起家的網際網路世界霸主google在2008年也終于把觸角伸向了web用戶端,重磅釋出了基于webkit引擎開發的chrome浏覽器。自此浏覽器戰場上群雄紛起、金花齊放,各自憑依作業系統平台,形成了一定的戰略均衡态勢。

目前全球範圍内使用最廣的浏覽器有google chrome、mozilla firefox、internet explorer、opera和safari,其中firefox、safari和chrome這三大開源引擎浏覽器總共占據了超過50%的市場佔有率。除了這些支援完整w3c html标準的全功能浏覽器之外,還有在linux等系統中被小範圍使用的指令行文字界面浏覽器,如lynx、links、w3m等。圖2-13用時間軸的形式展示了部分主流浏覽器的發展史。

早期浏覽器的排版引擎并未被設計成獨立子產品,而是與浏覽器的其他部分代碼緊耦合成一個整體。mozilla将其排版引擎gecko作為标準子產品單獨釋出後得到了廣泛使用,諸多浏覽器開發商如maxthon、flock、lunascape等開始采用gecko引擎作為浏覽核心,并且一些非浏覽器應用如mozilla thunderbird也基于其開發。目前功能完備的排版引擎分别是:trident(應用于internet explorer)、gecko(應用于mozilla firefox)、presto(應用于opera,計劃被webkit替代)、webkit(應用于apple safari和google chrome)。

《深入了解Android》一2.2 浏覽器和WebKit簡史

簡述完浏覽器的衆家族史之後,我們來看看本書主角webkit的前世今生。

一直以來,pc浏覽器基本上是ie和mozilla的天下,排版引擎非trident即gecko,第三方采用opera trident的情況極少。ie背靠windows的壟斷地位長期稱霸而不思進取,ie 6之後多年未曾更新,mozilla firefox的市場佔有率則增至20%左右後緩滞不前。2008年9月,谷歌公司重磅推出了基于webkit核心的chrome浏覽器,從此風雲突變,三國大戰再起。異軍突起的攪局者chrome促成了浏覽器技術的持續發展,時至今日已是天下三分。webkit也是以逐漸轉入更多開發者的視界,影響力和知名度與日俱增。

自2007年蘋果公司釋出iphone以來,智能手機和移動網際網路領域産生了革命性的爆發式增長,webkit也随之迎來了又一個騰飛的新契機。在兩大主流移動智能作業系統ios和android上,預設的浏覽器核心都是webkit,而且分别以framework的方式推出了uiwebkit和webview元件,使得第三方開發者可以據此建構自己的浏覽器或使用web技術展現内容的各種複雜應用。ios和android雙峰對峙,在确立了移動生态系統牢不可破的壟斷地位,伴随而來的結果就是移動平台上的浏覽核心基本上全是webkit。

目前webkit在各作業系統平台上總的市場佔有率高達40%,大幅超越trident和gecko位居第一。老牌的opera浏覽器已經痛下決心當機立斷,宣布在下一個版本中抛棄自主的presto引擎,轉而采用webkit作為核心。

主流排版引擎都經曆過長達十幾年的發展,webkit在其中隻能算作一個後起的新興之秀,但無論功能、性能、成熟度、相容性還是市場佔有率,webkit都完全不輸于那些老牌産品,甚至有很多方面明顯勝出。從表2-1對主流排版引擎在html 5、js性能、css3等多方面的評測中可以看出,webkit引擎十分優秀,擁有強大的競争力和吸引力。

《深入了解Android》一2.2 浏覽器和WebKit簡史

 performance和feature結果既依賴于排版引擎也依賴于浏覽器外殼,而這兩者的版本都是不斷更新更新的。是以表2-1的對比評測隻能作為參考結果,和迅猛發展的各浏覽器實際表現會有一定出入,更多詳細的最新測試結果可從acid3、css3test、html5test、peacekeeper、karen、dromaeo等專業測試網站和其他科技網站上看到。總的來說,以webkit/blink為核心的chrome浏覽器在諸多性能評測中基本上會囊括各項冠軍,同時其他浏覽器尾随其後也在不斷努力追趕。

從最初的弱小嫩苗到今日的蒼天大樹,webkit已經走過了近15年的曆史。回顧其迅猛的發展曆程和如今日益普及的現狀,展望未來,我們完全有理由相信,webkit/blink最終将成為排版引擎中的unix/linux,被業界當作事實上的标準實作。至少在開源引擎中,presto已将星隕落,僅存的碩果競品gecko發展前景和勢頭已經明顯不如webkit,試問尚有誰再可與之争鋒呢?

繼續閱讀