天天看點

浏覽器的發展曆史

發展曆史

  • 1991年,WorldWideWeb 浏覽器釋出 這款由 Web 之父 Tim Berners-Lee 親手設計的圖形化浏覽器還包含一個所見即所得 HTML 編輯器,為了避免同 WWW 混淆,這個浏覽器後來改名為 Nexus.(體驗版參見)

![

  • 1993年,Mosaic 釋出 Internet 的流行應該歸功于 Mosaic,這款浏覽器将 Web 帶向了大衆。諸如 IE, Firefox 一類的當代浏覽器仍然在延用 Mosaic 的圖形化操作界面思想。(詳細介紹)
  • 1994年,Netscape 成立 Marc Andreessen 帶領 Mosaic 的程式員成立了 Netscape 公司,并釋出了第一款商業浏覽器 Netscape Navigator.(詳細介紹)
  • 1995年,IE 釋出,浏覽器之戰即将爆發 微軟針對 Netscape 釋出了他們自己的浏覽器,IE,第一場浏覽器之戰爆發。
  • 1996年,Opera 釋出 Telenor 是挪威最大的通訊公司,他們推出了 Opera,并在兩年後進軍移動市場,推出 Opera 的移動版。
  • 1998年,Mozilla 項目成立 Netscape 成立 Mozilla 開源項目,開發下一代浏覽器,後來證明,使用原有代碼開發新東西是一種負擔,接着他們着手從新開發。
  • 1998年,Netscape 浏覽器走向開源 随着同 IE 征戰的失利,Netscape 市場佔有率急劇下降,Netscape 決定将自己的浏覽器開源以期重整山河。
  • 2002年,IE 開始主導浏覽器市場 市場佔有率達到95%,借助作業系統的捆綁優勢,IE 赢得第一場浏覽器之戰。
  • 2003年,蘋果 Safari 浏覽器登場 蘋果進入了浏覽器市場,推出自己的 Webkit 引擎,該引擎非常優秀,後來被包括 Google, Nokia 之類的廠商用于手機浏覽器。
  • 2004年,Firefox 引發第二場浏覽器之戰 Firefox 1.0 推出。早在 Beta 測試期間就積累了大量人氣的 Firefox 引發了第二場浏覽器之戰,當年年底,Firefox 已經赢得 7.4% 的市場佔有率。
  • 2006年,IE7 釋出 IE6 釋出後的第六年,迫于 Firefox 的壓力,微軟匆匆推出 IE7 應戰,吸取了 Firefox 的一些設計思想,如标簽式浏覽,反釣魚等。但這款浏覽器現在看來并不成功。
  • 2008年,Google 攜 Chrome 參戰 Google 釋出了他們自己的浏覽器,加入這場戰争。輕量,快,異常的穩固讓這款浏覽器成為不可輕視的一個對手。

目前現狀

浏覽器核心

浏覽器核心之間的差別

  • Trident核心
       Trident核心,又稱MSHTML,微軟核心。是微軟視窗作業系統windows搭載的網頁浏覽器,也是IE的排版引擎。IE核心相對其他核心是最開放的,接口設計相對最為成熟,對外部程式支援最好,這也是IE外殼的浏覽器最多的原因之一。IE背靠windows大樹一度占據浏覽器市場的絕對優勢,微軟也很長時間沒有更新trident核心,導緻Trident核心幾乎與W3C标準脫節,也是的大量的bug等安全性問題湧現,給了後起之秀很多機會。
  • Gecko核心
  Gecko,也稱壁虎,火狐核心。Gecko核心設計的相對成熟,在無法擷取源碼的情況下,開放程度僅次于IE。由于其本身Open Source。實際上是目前開發程度最好的浏覽器。Firefox的擴充能夠給浏覽者帶來完全不同的浏覽體驗。
  • webkit核心
  WebKit核心,蘋果公司自己的核心,也是蘋果的Safari浏覽器使用的核心。
  • blink核心
  Blink是一個由Google和Opera Software開發的浏覽器排版引擎,Google計劃将這個渲染引擎作為Chromium計劃的一部分,并且在2013年4月的時候公布了這一消息。在Chrome(28及往後版本)、Opera(15及往後版本)和Yandex浏覽器中使用。
  • Presto核心
  Presto是一個由Opera Software開發的浏覽器排版引擎,供Opera 7.0及以上使用。該款引擎的特點就是渲染速度的優化達到了極緻,也是目前公認網頁浏覽速度最快的浏覽器核心,然而代價是犧牲了網頁的相容性。

浏覽器間的比較

  • 綜合速度
  • 對html5支援
  • 綜合性能
  • 對軟體支援

重大變革

  • 第一次變革:Netscape王者
      故事從1994年開始,那一年網景通信公司推出了代号為“網景導航者”的網景浏覽器1.0,網際網路曆史上第一款商業化浏覽器産品——Netscape誕生了,随後的Netscape6開始采用Gecko核心。後來的Mozilla FireFox(火狐浏覽器)也采用了該核心,Gecko 的特點是代碼完全公開,是以,其可開發程度很高,全世界的程式員都可以為其編寫代碼,增加功能。因為這是個開源核心,是以受到許多人的青睐,Gecko 核心的浏覽器也很多,這也是 Gecko 核心雖然年輕但市場占有率能夠迅速提高的重要原因。這款産品迅速風靡,随後疊代版本占領了浏覽器大部分份額。在最鼎盛的時期,風光程度甚至超過了後來者IE。
  • 第二次變革:蝗蟲IE

      浏覽器世界統治時間最長、最為著名的莫過于微軟的IE系列浏覽器。如果不是網景浏覽器的太過成功,或許不會有後來的IE了,快速的發展讓Netscape犯下了一個緻命錯誤,由于浏覽器的成功帶來的自信導緻這家公司幹脆嘗試去做一個操作系了,而當時作業系統領域已經領先的微軟馬上意識到網景的威脅,立馬收購另外一家浏覽器公司,1997年微軟基于Mosaic(“馬賽克”,這是人類曆史上第一個浏覽器,從此網頁可以在圖形界面的視窗浏覽)代碼修改成了新的Trident核心,開發出了Internet Explorer,而且微軟把IE浏覽器捆綁在了他自己的作業系統中,想想當時的場景,安裝一個微軟的作業系統沒有浏覽器,還需要再花錢買一張網景浏覽器軟體才能上網,盡管網景浏覽器很好用,但這樣也很麻煩。微軟作業系統中直接帶有浏覽器,試問還有誰願意去在花錢買個浏覽器軟體?是以IE立馬占領了浏覽器市場。一直到今天,盡管有些強弩之末,但依然占據了半壁江山。

      很多人将IE的成功歸咎于微軟的“蝗蟲”式壟斷戰略,但坦白地說,Trident核心幫了它大忙,尤其在早期,從IE4中首次采用一直沿用到了IE11,是以Trident也被普遍稱為IE核心。Trident實際上是一款開放的核心,它比較輕盈,而且曆經多代發展,已具有成熟的接口規範和接口開發性,能夠适應不同的腳本要求。是以才有許多采用 IE 核心而非 IE 的浏覽器(殼浏覽器)湧現。

      非 Trident 核心浏覽器的市場占有率大幅提高也緻使許多網頁開發人員開始注意網頁标準和非 IE浏覽器的浏覽效果問題。 補充:IE 從版本 11 開始,初步支援 WebGL 技術。IE8 的 JavaScript 引擎是 Jscript,IE9 開始用 Chakra,這兩個版本差別很大,Chakra 無論是速度和标準化方面都很出色。 國内很多的雙核浏覽器的其中一核便是 Trident,美其名曰 “相容模式”。 Window10 釋出後,IE 将其内置浏覽器命名為 Edge,Edge 最顯著的特點就是新核心 EdgeHTML。關于 Edge 浏覽器更多可以參考 如何評價 Microsoft Edge 浏覽器?

  • 第三次變革:烈士遺孤Mozilla
      1998年1月,網景與微軟IE浏覽器競争失利以後,為了挽回市場,網景通信公司公布旗下所有軟體以後的版本皆為免費,并成立了非正式組織Mozilla,自此Mozilla浏覽器開始登上舞台。Netscape雖然死了,但是留下的“遺孤”Firefox(狐狸),則開始邁出了漫長的複仇之路。Mozilla Firefox也是基于Gecko核心,但此Gecko已非彼Gecko。 上一代的Gecko核心由于公司産品研發政策發生的偏差,導緻它越來越臃腫,受人诟病。尤其是被AOL收購後,這家公司除了将Netscape帶向死亡外,沒有任何建樹。 而新一代的Gecko核心引擎的由來跟 IE 不無關系,由于 IE 本身的 “壟斷性”(雖然名義上 IE 并非壟斷,但實際上,特别是從 Windows 95 年代一直到 XP 初期,就市場占有率來說 IE 的确借助 Windows 的東風處于 “壟斷” 的地位)而使得 Trident 核心的長期一家獨大,微軟很長時間都并沒有更新 Trident 核心,這導緻了兩個後果——一是 Trident 核心曾經幾乎與 W3C 标準脫節(2005年)這也導緻了微軟内部一些開發人員的不滿,二是 Trident 核心的大量 Bug 等安全性問題沒有得到及時解決,然後加上一些緻力于開源的開發者和一些學者們公開自己認為 IE 浏覽器不安全的觀點,也有很多使用者轉向了其他浏覽器,而那些不滿的部分微軟“叛将”與當時已經停止更新了的 Netscape 的一些員工一起創辦了Mozilla(Opera 也是這個時候興起的),以當時的 Mosaic 核心為基礎重新編寫核心,于是開發出了 Gecko。針對IE,Gecko祭出了自己的殺手锏——開源,通過源代碼開放,徹底解決了安全和速度問題。尤其是熱代碼加速這個全新思路,為Firefox打開了勝利之門。從剛開始被微軟取笑為“臭狐狸”到與IE形成分庭抗禮的局勢,也不過是短短幾年而已。不過,Gecko 核心的浏覽器仍然還是 Firefox 使用者最多,是以有時也會被稱為 Firefox 核心。此外 Gecko 也是一個跨平台核心,可以在Windows、 BSD、Linux 和 Mac OS X 中使用。
  • 第四次變革:蘋果Safari來了

    可惜的是盡管Mozilla、opera浏覽器很好用,可微軟作業系統的市場占有率很大,造成其他浏覽器的市場佔有率一直不變。IE自從坐上了份額第一的頭把交椅後,就一直不思進取了,自己制作一套web标準,也不怎麼支援html,javascript,css這些web技術的新版本特性,微軟從ie6開始到ie8七八年間幾乎沒對Trident進行過像樣的更新,這與後來勤快的蘋果、Google形成鮮明的對比。雖然ie通過壟斷赢得了市場,但不安全、崩潰、速度慢等等問題也一直讓使用者難以忍受。現實往往就是這麼捉摸不定,變幻莫測,正當人們認為Gecko将與Trident上演“雙寡頭”的時候,蘋果大叔開始出手,做了蟬和黃雀後面的螳螂。

    話說回來,這也得怪Gecko和Trident他們自己。Gecko再次犯了當年的錯誤——貪大求全,将郵件組、新聞討論區、聊天等流行應用都打包進了Firefox,導緻記憶體占用問題。此外,Firefox對JavaScript的支援并不好,反應遲鈍也開始被頻頻抨擊。而Trident呢,幾乎沒怎麼更新過,很多相容問題導緻開發者也是頭大。再加上開放性問題,緻使IE在安全性、速度等諸多問題上被群起而攻。從這個意義上來說,是壟斷成就了IE,同樣也是壟斷毀滅了IE。

    勤勞的又追求極緻的蘋果推出的基于WebKit核心的Safari浏覽器則引導了浏覽器的本質回歸潮流。Safari 在 2003 年 1 月 7 日首度發行測試版,并成為 Mac OS X v10.3 與之後版本的預設浏覽器,也成為蘋果其它系列産品的指定浏覽器(也已支援 Windows 平台)。WebKit核心則是蘋果基于KDE小組(Linux桌面系統)的 KHTML 引擎開發出來的,可以說 WebKit 是 KHTML 的一個開源的分支。當年蘋果在比較了 Gecko 和 KHTML 後,選擇了後者來做引擎開發,是因為相比Gecko,KHTML 擁有清晰的源碼結構和極快的渲染速度,也實作了JavaScript腳本的快速解釋器調用。事實上,這個寶押對了。這種輕靈随後就赢得了Google的青睐(2008 年谷歌公司釋出 chrome 浏覽器,采用的 chromium 核心便 fork 了Webkit)。現在Google Chorme已成增長最快,最受開發者喜歡的浏覽器了,加上蘋果Safari的份額,WebKit已經與Gecko、Trident開始“三國演義”。

    有意思的是,自從蘋果的WebKit推出後,不光是谷歌青睐,就連Firefox内部也開始有“異見”,要求抛棄Gecko而選擇WebKit。

    更有意思的是,一提到 webkit,大家首先想到的便是chrome,可以說,chrome将 Webkit核心深入人心,殊不知,Webkit 的鼻祖其實是Safari。現在很多人錯誤地把 webkit 叫做 chrome核心(即使 chrome核心已經是 blink 了),蘋果都哭瞎了有木有,Webkit核心可以說是以硬體盈利為主的蘋果公司給軟體行業的最大貢獻之一。

  • 第五次變革:後起之秀-谷歌Chrome(Bink/Chromium)

    自蘋果推出的WebKit核心後,這種回歸本質的輕靈受到了谷歌的青睐,2008年chrome橫空出世。界面簡潔、加載快速、資料安全等這些特點讓chrome越來越受喜歡,甚至好過于蘋果了。加之很多web開發者對其的追捧,最終使其市場佔有率逐漸攀升,成為了後起之秀。

    谷歌釋出的 chrome 浏覽器使用的核心被命名為 chromium。chromium 雖然是開源引擎webkit的一個分支,卻把 WebKit 的代碼梳理得可讀性提高很多,是以以前可能需要一天進行編譯的代碼,現在隻要兩個小時就能搞定。是以 Chromium 引擎和其它基于 WebKit 的引擎所渲染頁面的效果也是有出入的。是以有些地方會把 chromium 引擎和 webkit 區分開來單獨介紹,而有的文章把 chromium 歸入 webkit 引擎中,都是有一定道理的。谷歌公司後來還研發了自己的 Javascript 引擎,V8,極大地提高了 Javascript 的運算速度。

    Chromium 問世後,帶動了國産浏覽器行業的發展。一些基于 chromium 的單核,雙核浏覽器如雨後春筍般拔地而起,例如:搜狗、360、QQ浏覽器等等,無一不是套着不同的外殼用着相同的核心。然而2013年4月3日,谷歌在Chromium Blog上發表 部落格,稱将與蘋果的開源浏覽器核心 Webkit 分道揚镳,在 Chromium 項目中研發 Blink 渲染引擎(即浏覽器核心),内置于 Chrome 浏覽器之中。

    • Webkit 用的好好的,為何要投入到一個新的核心中去呢?

      Blink 其實是 WebKit 的分支,如同 WebKit 是 KHTML 的分支一樣。Google 的 Chromium 項目此前一直使用 WebKit(WebCore)作為渲染引擎,但出于某種原因,并沒有将其多程序架構移植入Webkit。後來,由于蘋果推出的 WebKit2 與 Chromium 的沙箱設計存在沖突,是以 Chromium 一直停留在 WebKit,并使用移植的方式來實作和主線 WebKit2 的對接。這增加了 Chromium 的複雜性,且在一定程度上影響了 Chromium 的架構移植工作。基于以上原因,Google 決定從 WebKit 衍生出自己的 Blink 引擎(後由 Google 和 Opera Software 共同研發),将在 WebKit 代碼的基礎上研發更加快速和簡約的渲染引擎,并逐漸脫離 WebKit 的影響,創造一個完全獨立的 Blink 引擎。這樣以來,唯一一條維系 Google 和蘋果之間技術關系的紐帶就這樣被切斷了。

      Google 和 Apple 在多個領域都是競争對手,而唯獨在浏覽器引擎上有技術合作,利益一緻。但為了各自的利益,誰都不會拿出 100% 的 “誠意” 來做好 WebKit,因為你做出來的成果競争對手可以直接享用。移動網際網路已經崛起,手機和平闆裝置端必将成為浏覽器的另一個戰場。這個時候,如果 Google 跟蘋果仍然黏在一起,将會嚴重阻礙雙方的進步,也會阻礙 WebKit 的進步。據說 Blink 删除了 880w 行 webkit 代碼。

      Blink 引擎問世後,國産各種 chrome 系的浏覽器也紛紛投入 Blink 的懷抱,可以在浏覽器位址欄輸入 chrome://version 進行檢視。

      在chrome發展壯大過程中,微軟才意識到chrome開始對它逐漸侵蝕自己的市場有了危機感,才開始頻繁更新IE,2011年IE9釋出,2012年IE10釋出,2013年IE11釋出,最後IE的代碼實在适應不了新要求的web技術,就重新開發了一個名為“edge”的浏覽器用來取代IE,但還是擋不住chrome成為市場佔有率第一的命運。在IE橫行的那一段時間為了适應IE中國的大多數常用網站也不大符合網際網路标準,也就是說如果用符合網際網路标準的浏覽器去解析這些網站,反而會不正常顯示,可見IE坐頭把交椅的那幾年,卻一直在誤導和阻撓網際網路的發展,悲哉啊。在此要向那些不斷創新、不斷完善、不斷接納新web技術的浏覽器公司緻敬,面對IE他們的市場佔有率不高,卻仍然堅持着不斷前進。

  • 第六次變革:1+1>2,雙核時代

    Webkit的異軍突起将浏覽器的特性拉回到“浏覽”的本質上來——評價浏覽器優劣的關鍵詞不外乎三個方面:相容性、安全性、浏覽速度。而追究每一次浏覽器的更替,你總會發現,它們在這三方面總有緻命缺陷。

    如此情況下,一種新的呼聲正在崛起——多核。尤其是在中國市場,由于Firefox等浏覽器在中國的市場佔有率極少,中文網頁多是“IE标準”,使用者暫時無法抛棄Trident核心,但他們又需要速度更快、更穩定的浏覽體驗。采用“多核”之後,這種沖突迎刃而解。

    從全球範圍來看,多核未必蔚然成風,但在特殊的中國市場,這代表了潮流。看看現在的國内浏覽器吧:360安全浏覽器,QQ浏覽器、搜狗浏覽器,UC浏覽器、2345加速浏覽器、百度浏覽器、獵豹浏覽器、遨遊浏覽器,世界之窗,有幾個不是雙核的?你再看看國外的浏覽器:chrome、safari、opera、firefox、ie又有幾個是雙核?

國内浏覽器的起源

國産浏覽器起源于IE,一位網名為changyou(暢遊)的程式員于1999年在論壇上釋出一款叫"MyIE"的浏覽器,基于IE,但采用多視窗浏覽,占用系統資源比IE6少很多,且有滑鼠手勢、視覺化書簽等功能。後來“暢遊”這個人就消失不見了,MyIE版本到3.2版本後就再也沒有更新過。MyIE代碼停更後,有很多程式員接起了MyIE的開發工作。不過因為沒有MyIE作者的參與,各自為戰,進而誕生了一大批以MyIE為基礎的浏覽器,其中最出名的就是MyIE2(後改名Maxthon)、網際暢遊(後改名GreenBrowser)和TheWorld(世界之窗)了。

MyIE2後來改名叫Maxthon,即今天的傲遊。老闆叫陳明傑,jeff Chen,獨立開發MyIE2,然後回國創業,拉起了傲遊公司,直到今天。傲遊走的是高大全路線,一直以來屬于重型浏覽器——當然,重型不等于速度慢,隻是外表看起來功能齊備而複雜,實際上對于粉絲來說這款浏覽器當屬靈敏與全能兼備的沖浪利器。

GreenBrowser比較可惜,走的是小巧路線,當然功能也不算少,而且不用安裝,後來無聲息了。

TheWorld就更可惜了,由鳳凰工作室研發。後來被360安全浏覽器收購了。360買下後,仍然允許鳳凰工作室繼續研發。再後來就是Chromium核心:世界之窗極速版、360極速浏覽器,發展到世界之窗6的時候,360就不讓鳳凰工作室繼續研發世界之窗了。于是就有了這個國内占有率極高的360極速浏覽器。而世界之窗6停留在了14年,鳳凰工作室轉而研發Android上的星塵浏覽器,以及基于Android x86的鳳凰系統了。

TT 浏覽器,騰訊的,後來改為QQ浏覽器了(知名度僅次于360浏覽器)。

獵豹浏覽器,付盛接手金山網絡後的一個力作,拿chromium改的,但是在包裝上做足了文章。

淘寶浏覽器神馬的就不說了......

是以,将MyIE稱為今日國産浏覽器的鼻祖是不為過的。而且MyIE最大的貢獻就是多标簽!

移動端浏覽器

移動端的浏覽器核心主要說的是系統内置浏覽器的核心。 主要是:webkit、chromium、blink、trident、u3、x5

由于智能移動端發展曆史相對于 pc 很短,是以 ie、opera這些元老級浏覽器核心很少見,移動端浏覽器大都是從webkit開始的,2005年,諾基亞公司的S60團隊成為手機端WebKit的先驅,他們将WebKit架構移植到了Symbian S60平台,作為S60第三版的浏覽器核心。2007年6月29日,iPhone上市,WebKit通過Safari浏覽器進入iOS平台,而且立即成為當時iOS平台唯一的排版引擎。 2008年10月22日Chrome Lite浏覽器内置在android中。所有的智能手機清一色的選擇了webkit,也證明了KDE和蘋果公司對webkit的貢獻很大。有趣的事情在android作業系統中發生了,android原生網頁視圖WebView也是基于Webkit,chrome浏覽器開發團隊當初聽取android開發團隊的意見也選擇了webkit,個人覺得當時他們就商量好了,那就是chrome後續開發的成果會用在android上。是以直到android 4.4為止,android上的webview元件都被人吐槽,速度慢、排版差,不得已第三方手機浏覽器紛紛研發核心。騰訊的x5,UC的U3都是當時的疊代品。而同時chrome則一路高歌不斷占領浏覽器市場,期間chrome Lite隻是作為android的内置浏覽器,2013年9月android釋出的android4.4終于把原本基于Android WebKit的WebView實作換成基于Chromium的WebView實作,從此基于Chromium的WebView實作成為了Android系統上的預設實作方式。如果chromium用新的核心blink,android自然也會跟進,而最終chrome os和android會走在一起,不分你我。除此外的Windows Phone 8 系統浏覽器核心則采用的是 Trident,但現已經沒有聲音了。

國内的手機端浏覽器必須要提 UC 的U3核心和騰訊 QQ 的x5核心了,UC從非智能機開始就存在了,當之無愧最好用的移動浏覽器。然而進入移動時代……UC反應慢了點,加上各種奇怪的APP都蜂擁而入,移動浏覽器市場已經亂成了一鍋粥。這鍋粥裡第一個炸開的米粒是海豚浏覽器,号稱矽谷華人創業團隊,什麼創新思維,高估值之類……但也沒亂用,最後拼的都是一個字——錢。自從 UC認了馬雲幹爸爸之後,就活過來了,現在移動端占有率依然很高, 而現在的 QQ 浏覽器借助流量入口微信也算是很成功了。除此外手機百度、QQ 浏覽器、360、搜狗、獵豹表現都不錯。

參考連結:https://www.jianshu.com/p/db1b230e3415

https://www.cnblogs.com/woai3c/p/10247919.html

https://www.zhihu.com/search?q=%E5%89%8D%E7%AB%AF%E5%8E%86%E5%8F%B2&utm_content=search_history&type=content