Firefox Quantum瀏覽器速度是Firefox 52的兩倍。它能夠通過使用Rust語言來重建組件提高瀏覽器的速度,這些組件現在更有效率。 Firefox曆史版本僅在一個CPU核心上運行任務,但在Quantum及更高版本中,它將利用多個CPU核心,從而使瀏覽器速度更快。
通過使用Rust編寫的新CSS引擎,Firefox可以並行使用多個CPU來縮短加載時間,Mozilla聲稱沒有其他瀏覽器可以執行此操作。為了進一步提高速度,Mozilla將用戶打開的選項卡放在首位,並且采用多進程架構。 Firefox Quantum在某些網站上的打開速度超過Chrome,同時使用的內存減少30%。該團隊還修複了468個瀏覽器問題,這可能會導致速度上升。
一、傳統擴展將會停止使用
第一個觀點:凡事都有兩麵性。
目前擴展有兩種架構,一種是老舊的 XUL 擴展,可以修改 Firefox 任何方麵,一種是新的例如 Bootstrapped 擴展、基於 SDK 的擴展和最新的 WebExtensions 擴展的架構。而其中前三種被稱為傳統擴展。
一些人堅持認為傳統擴展才是 Firefox 最強大的地方,但是作者認為這是有代價的,最強的優點往往也是 Firefox 最大的弱點。
傳統擴展可以修改任何地方,給了開發者無限可能性,但也讓擴展變得不可控,因為開發者可以隨心所欲。這對所有人來說都是一個問題。對於 Mozilla,他們無法開發出一個可遷移的固定框架,因為 Firefox 內部代碼和擴展使用的代碼無法區分開來,而其他廠商的框架非常靈活。對於開發者,Firefox 每次更新後往往擴展會出現兼容性問題,開發者需要不斷調試擴展進行適配,非常煩人。對於用戶,他們的擴展經常都會突然無法工作,得一直等待更新修複,甚至根本就等不來更新。
第二個觀點:Mozilla 的錯誤也許是 SDK,而不是 WebExtensions
一些人認為 WebExtensions 擴展無法像傳統擴展那麼強大,這是這些人不歡迎的原因。但作者認為 WebExtensions 才是正確的、唯一的能讓 Firefox 始終保持頂尖水準的方法。
真正的問題早在 Firefox 4 引入 Add-on SDK 時就產生了,Mozilla 簡化了擴展的開發的理念是對的,但當時沒有進一步使其變成如今的 Webextensions。Webextensions 提供了明確的框架規定哪些能開發那些不能,提供了權限授權模塊且用戶界麵性能優異。而 Add-on SDK卻有大量的性能上的問題,甚至浪費了多進程模式下的每個 content 子進程的帶來的性能提升,因為每多個子進程都會產生性能問題。綜上所述:Firefox 4 就已實現了類似 Webextensions 的架構,它後續如果演化出一些 Webextensions API,哪怕開發有些遲,也對於 Firefox 57 實現 Webextensions 來說也有幫助,也有優勢。
但你會說 Mozilla 也是人,不可能一開始就設想完美。所以從這個角度出發,SDK 也帶來了很重要的體驗,也為 WebExtensions 架構開發做出了貢獻。
第三個觀點:很多人根本不使用擴展
很多人認為使用 Firefox 的一個主要原因就是用它的附加組件,所以一旦大量擴展突然不能用,Firefox 就會完蛋。但實際上超過 40% 的用戶一個擴展也沒安裝,40%到50%之間用戶隻使用TOP50的流行擴展。到了 Firefox 57,很可能這些擴展就已兼容 WebExt。很多用戶甚至都不知道自己裝了哪些擴展,也不會注意到擴展不能用了。或者知道有些不同,但說不出個所以然。作者認為這不是個別情況。
因此作者認為這次架構改變會是安全的,因為超過半數用戶完全都察覺不到擴展的變化。改變帶來的優點大大超過帶來的缺點。會吸引更多新用戶使用 Firefox。Webext 會帶來側邊欄界麵等更多 Chrome 所不具備的界麵。Chrome API 是 Webext 架構開發的起點,Firefox 不會受到限製,會做的更多。
綜上:作者認為許多傳統擴展能做的事情,Webext 也能做到,或者現在做不到至少未來能做到。Firefox 57 到來後,Webext 的開發也不會停止。而一些 Webext 做不到的,例如各種界麵調整,修改設置,可以通過 about:config 修改。就算這類擴展無法通過 Webext 實現,但還是讓人可以理解的。
Webext API 也會帶來兼容性方麵的優勢,Firefox 更新後擴展不會失效,因為設計上就避免 API 修改上的不兼容,而這是 XUL擴展所做不到的。Mozilla 也能更致力於加強 Firefox 的開發,使其保持在頂尖水平。目前 Firefox 性能明顯弱於其他瀏覽器,擴展開發再好也沒意義。
二、全新的主題係統
Firefox 也有兩套主題係統,一個是輕量主題,隻能修改瀏覽器外觀紋理和配色。另一個是完整主題,類似於 XUL 擴展,可以修改界麵的任何地方。
第一個觀點:之前的主題係統已經崩壞
在 AMO 目前共有 500 款完整主題,但隻有 60 款可以用在當前版本 Firefox 上,這說明原來的主題係統已經崩壞。主要原因是 Firefox 開發速度加快,完整主題的作者必須不斷適配,對他們來說要耗費很大精力。而且主題開發文檔的缺失讓開發變得更難。未來的新主題是否會讓開發者滿意需要時間來證明,但普遍對現有主題不滿意則是肯定的。而輕量主題是永遠都不會失效,且使用良好。但主題可實現功能受到嚴重限製,開發者往往希望能有更多定製的可能。
第二個觀點:主題是用戶的小眾需求
隻有 0.089% 的 Firefox 用戶在用完整主題。就衝這點,Firefox 就可以完全取消對主題的支持。但 Mozilla 還是堅持考慮這不到 0.1% 的用戶的需求,分配資源開發新的主題係統,作者表示很欣賞。
綜上:作者認為新的主題係統會取代之前已經失效的主題係統,功能上會受到嚴格限製,不過也會解決存在的兼容性問題。用戶不用擔心每次 Firefox 更新後主題會失效,它能夠一直正常使用。對於主題開發者,開發更容易,所花的時間也更少。一些人可能會對主題功能受限可定製性少有所不爽,但別忘了可以說幾乎沒人在用完整主題。而新主題係統則可以吸引更多人使用主題,例如那些不喜歡主題過於簡單,希望工具欄圖標能有所改變的人。對於那些覺得輕量主題已足夠無需改變的用戶,這些主題仍可以一直兼容下去。
三、額外的一個優點是更容易從 XUL 中抽身
這次改變另一個優勢在於更容易從一項後續困難轉變中抽身,這就是徹底淘汰 XUL 語言。由於 Firefox 57 後的擴展和主題無需直接訪問 XUL,所以淘汰 XUL 的目標更容易達到,開發者也無需再次適配所有擴展和主題。如果 Mozilla 繼續允許訪問 XUL 界麵,未來數月乃至數年內我們都要重複麵對同一問題,就是擴展和主題一次又一次失效。
四、新的 Photon 主題,增加可定製功能
對於新主題的設計,總是有人喜歡有人不喜歡。對於 Firefox 29 引入的 Australis 主題,最多的不滿就是弧形標簽頁以及太像 Chrome。現在 Photon 主題和 Chrome 的就差別很大,即便是堅持認為 Australis 主題抄襲 Chrome 的人也會對 Photon 少一些抱怨。Photon 主題在界麵上帶來了很多改變,同時也帶給用戶更多可定製的地方。例如 Firefox 29 取消的可調整空白回歸了。
綜上:作者認為新主題設計,可以說是有得有失。Mozilla 帶來最好的改變就是回歸方形的標簽頁,因為它讓許多事情變得簡單了。但也無法低估標簽形狀的複雜性,因為要考慮動畫效果以及性能。但想要改變主菜單內容的用戶可能會失望,因為主菜單內容現在變成了靜態對象。但實際上可定製的選項是增加了,這對於認為 Firefox 的定製性是其最大優勢的用戶來說是一個加分項。
五、多進程架構
轉換到多進程架構是 Firefox 曆史上最大的改變之一,持續了數年,計劃 Firefox 57 的時候正式默認推送給所有用戶。默認啟用的用戶會開啟多個 content 子進程,Firefox 56 時候任何使用 SDK 附加組件的用戶仍不會開啟超過一個 content 子進程。
多進程的帶來的優點是穩定性、性能和安全性,也包括更好的支持網頁標準。瀏覽器界麵和網頁內容分離可以提升性能,避免整個瀏覽器因網頁崩潰或掛起而無響應。最重要的是它的沙盒可以增加安全性,減少被暴露的危險。本地文件也會在獨立的進程打開,甚至 WebExtensions 也會運行在獨立的進程。多進程默認對所有用戶啟用將是 Firefox 57 正式版最大的看點。
六、Quantum 帶來更大性能提升
Quantum 項目旨在幫助 Firefox 在保持現有 Gecko 引擎的基礎上進化為下一代的瀏覽器。Firefox 53 的 Windows 版本已經正式啟用了該項目的圖形進程,而 Firefox 57 將會是該項目的第一個重要裏程碑。Quantum 項目包括:Quantum DOM 提升 Gecko 響應度,尤其是在打開大量後台標簽頁時的響應。Stylo 是使用 Rust 語言編寫,來自下一代 Servo 引擎的全新 CSS 樣式係統,在實現並行計算時具有優勢。WebRender 也來自 Servo,用於渲染網頁內容,支持遊戲圖形顯卡,但主要用於優化網頁內容顯示(樓主補充,Servo是火狐現在全力開發的下一代內核,與目前所有內核都不同的地方在於,Servo是第一個能並行加載網頁內容的內核),Firefox 會智能判斷載入網頁資源的優先級來渲染顯示。此外,跟蹤保護機製在該功能未啟用的時候仍可以使用。從網頁下載而不是從緩存下載文件的邏輯更快。QuantumFlow 可在 Quantum 項目未涵蓋的其他地方繼續優化性能,例如優化 UI 性能。至於 Firefox 57 時候有多少提升,大家拭目以待。
七、其他的特性
Firefox 57 還會帶來其他的新特性。例如 TestPilot 正在測試的 Activity Stream,用於取代默認的新標簽頁麵。還有正在開發 PDFium 作為默認的 PDF 閱讀器。不過具體還要看未來數月的開發情況。
八、最後的結論
作者最後結論是對於 Firefox 57,即便有些用戶不滿意,它仍是 Mozilla Firefox 再次成為未來最高水準瀏覽器陣營一員的基礎。Mozilla 會取消完整主題,畢竟隻有 0.089% 的用戶在使用。
瀏覽器市場競爭是殘酷的,Firefox 的市場份額已經持續下降多年了。市場份額不是 Mozilla 主要的關注點,隻要用戶能自由選擇瀏覽器而不被限製,Mozilla 就算是成功了。但很明顯比起隻有 1% 的市場份額,如果一個瀏覽器開發商擁有 80% 的市場份額,那它就會對網頁開發具有更大影響力。當然,生意是在競爭中達成的。Firefox 不必追求 80% 的市場份額,如果市場份額能分散在不同瀏覽器而非單一瀏覽器獨占,這對所有人來說都是好事。
問題是 Mozilla 沒有 Google、微軟和蘋果那麼大的財力,也沒有辦法像用 Google 其高帶寬的服務推廣 Chrome 那樣來給 Firefox 做廣告。Mozilla 是一個非營利性組織,主要關注的是數據和隱私保護,Firefox 也是一個開源產品,這才是它最大的宣傳標語。大多數用戶都不會想去換瀏覽器,所以 Mozilla 隻能通過功能以及性能來說服他們去使用,借此讓自己在瀏覽器市場變得越來越重要。
如果 Mozilla 想要積極變成最好,而不是還不錯,有些東西必須改變,改變也會很艱難。Firefox 57 會是邁出的巨大的一步,影響會很大,這一步值得鼓勵。當然,這個計劃也有可能反複,但作者認為這一步是需要的。Mozilla 也有足夠的市場份額來承受。作者相信 Mozilla 走的方向是正確的。也許 Firefox 57 這個版本不會帶來多少市場份額的提升,但 Mozilla 會成功的,Firefox 57 將是未來再次成為用戶一個選擇的基礎,而現在則不是。當然,Mozilla 還要在 Firefox 57 的基礎上不斷進步,未來肯定和今日有所不同。
234KB/01-09
聊天工具
下載321KB/01-09
聊天工具
下載231KB/01-09
聊天工具
下載76.4M / 03-25
立即下載55M / 06-05
立即下載237.9M / 04-13
立即下載140.5M / 03-06
立即下載900.9M / 03-02
立即下載96.2M / 07-06
立即下載311.2M / 07-06
立即下載335M / 07-06
立即下載200M / 07-06
立即下載413.8M / 07-06
立即下載353.9M / 06-05
立即下載131.8M / 04-13
立即下載230.8M / 03-03
立即下載195.6M / 03-03
立即下載165.4M / 03-03
立即下載45.6M / 09-08
立即下載665.2M / 07-06
立即下載2.84G / 07-06
立即下載93M / 07-06
立即下載338.3M / 07-06
立即下載1.38G / 07-26
立即下載488.3M / 07-16
立即下載109.8M / 06-03
立即下載142M / 01-08
立即下載1.2M / 11-23
立即下載548.8M / 04-13
立即下載1.6M / 04-13
立即下載1.48G / 03-18
立即下載646.6M / 03-03
立即下載133.7M / 03-03
立即下載325.8M / 06-07
立即下載60M / 04-29
立即下載254M / 04-25
立即下載659M / 04-23
立即下載1M / 12-26
立即下載253.4M / 12-08
立即下載253M / 12-08
立即下載1.19G / 11-16
立即下載110.5M / 04-23
立即下載26.7M / 03-16
立即下載488.3M / 07-16
立即下載248.9M / 12-08
立即下載248.9M / 12-08
立即下載201.2M / 04-13
立即下載100.6M / 03-06
立即下載148.9M / 03-06
立即下載1.12G / 07-06
立即下載1.25G / 07-06
立即下載9.48G / 07-06
立即下載50KB / 07-06
立即下載116.2M / 04-10
立即下載1.92G / 04-17
立即下載201.5M / 04-13
立即下載7.31G / 07-01
立即下載94.3M / 07-06
立即下載2.48G / 07-06
立即下載7.63G / 07-06
立即下載1M / 07-06
立即下載778.1M / 07-06
立即下載509.7M / 07-06
立即下載561.8M / 07-11
立即下載1.32G / 01-19
立即下載72M / 07-06
立即下載548.7M / 07-06
立即下載1.00G / 07-06
立即下載9.13G / 07-06
立即下載126.2M / 07-06
立即下載72M / 07-06
立即下載105.1M / 07-06
立即下載132M / 07-06
立即下載