Web 開發者新神器:能執行遊戲引擎的火狐 Quantum 瀏覽器
編者按:Aytekin Tank是JotForm的創始人,最近,他刊文表揚了火狐Quantum,新瀏覽器增加了許多先進技術,他認為開發者應該試一試。
我不知道你多大了,因為我是80年代末出生的,所以清楚記得Firefox(火狐)的崛起和衰落。
火狐是以“IE6開源競爭對手”這一身份出現的。它很強大,因為它提供多種選擇,例如,使用者可以通過多種多樣的擴充套件包增加新功能,改變視覺主題。所有人都喜歡火狐。
幾年後,又一個競爭對手闖入市場,它的名字叫作Chrome。很快Chrome就衝上雲霄,超越了對手。事實上,Chrome有如此多的使用者,而且是在相當短的時間內積累的,它已經成為谷歌最有價值的資產之一。我相信有許多人讀這篇文章時,使用的就是Chrome瀏覽器。
作為一名開發者,我深知取悅使用者是一件極難的事。
隨著複雜WEB技術、應用、軟體的發展,消耗過多RAM和CPU的問題漸漸變得嚴重起來。
JotForm 開發團隊的Deniz最近評論說:
“我有一臺計算機,它是最新的Macbook Pro。用它從事開發工作(開啟Chrome DevTools)時,電池電量流逝的速度太快了。”
我相信,如果你也是一名開發者,應該會有相似的看法,或者聽到周圍有人有過相似的抱怨。
你可能會進一步深思,考慮換一換瀏覽器,不再用Chrome。
正因如此,全面改變的新版火狐才會應運而生,它就是火狐Quantum。
2017年,Quantum正式推出,面向Android、Linux、iOS、Mac和Windows使用者,此時離Mozilla推出第一版火狐瀏覽器已經10多年了。
除了披上漂亮的現代“外衣”,傳聞還說Quantum載入網站的速度是火狐6的兩倍,消耗的記憶體比Chrome少了30%。
10年之後的今天,Mozilla必須尋找新方法,將自己的產品與競爭對手區別開來,這是一件很難的事。
為了完全發揮計算機的效能,Moilla重寫近400萬行程式碼,引入了許多尖端技術,比如Servo、Rust、Quantum/Stylo。
付出是有回報的。
依我之見,與其它瀏覽器相比,Quantum有著很大的優勢。
為什麼?原因如下:
新技術
WebAssembly
在網上執行更大、更華麗或者更復雜的應用程式,這是許多開發者的夢想。近年來,一些新元素流行起來,比如照片和視訊編輯、3D遊戲編輯、VR/AR,網民的預期提高了很多很多。
JavaScript引擎(比如谷歌V8、Mozilla SpiderMonkey、微軟Charka)已經高度成熟,速度越來越快,可以處理這些任務了。
到了2017年年底時,我們已經可以在火狐瀏覽器上執行Unity和Unreal遊戲引擎了。現在呢,其它大型掃描器也開始支援。
A-Frame和WebVR
最近出現一門重要的創新技術,它就是VR。由於手機、瀏覽器、相關產品(比如Oculus Rift和HTC Vive)的進步,VR會以很快的速度繼續進化。
開發WebVR框架時,Mozilla扮演了重要角色,它還用新WEB瀏覽器增強VR體驗。因為有了A-Frame(它得到了Mozilla的支援),一個出色的WebVR框架流行起來,每一個人都能使用了。
Common Voice專案
蘋果Siri、微軟Cortana、亞馬遜Echo和谷歌Home都遵循專有、封閉式策略,它們用這種策略開發語音識別技術,這些技術成為產品的根基,可以響應語音命令。
現在Mozilla推出了Common Voice,它是一個開源專案,目標是將語音識別技術帶給每一個人。
不論是誰,都可以對著機器大聲朗誦句子,將線索告訴機器,為Common Voice做貢獻。你可以對常用語音轉錄文字進行驗證,確保識別引擎走上正軌。
火狐Devtools
我在上面談到了火狐的一些變化,當我告訴你DevTools有了很大的進步,你肯定不會感到意外。Debugger.html正是其中之一。哪些地方最棒呢?Debugger.html是一個開源專案,放在GitHub,每一個人都可以參與開發。
下面就讓我們來說說Debugger.html的新功能:
通用-檢查工具
改變主題
新的開發者工具有3種不同的主題選項:一是暗黑主題,二是清爽主題,三是Firebug主題。仍然有許多人喜歡Firebug工具,雖然它的開發工作已經停止。
CSS Grid
在CSS領域出現一種新的創新技術,它就是CSS Grid Layout。有了DevTools工具,你可以檢視“display: grid”元素。你還可以關閉一些東西,比如行號、區域名稱。
Box Model
一些元素的“Margin”和“Padding”值有時會讓人困惑。有了盒模型 ( Box Model )架構,你可以輕輕鬆鬆調節,修改一些屬性,比如Margin、Padding值,修改邊框。
CSS變數
引入變數,這是CSS的另一個重要創新。雖然到目前為止並不是所有瀏覽器都支援變數,但是隨著時間的推移,肯定都會支援的。顧名思義,所謂的CSS變數就是你可以為變數賦予任何數值。想檢視數值是多少嗎?很簡單,只要將滑鼠移到上面就行了。
新增或者刪除Class
在DevTools儀表板的右側有一個按鈕叫作.cls,按一下,你可以往HTML元素中新增或者剔除CSS Class。
Hover
當你點選右側的.cls旁邊的按鈕,可以測試當前元素的Hover、Active、Focus特性。
字型
當你檢查某個元素,可以看到元素使用了什麼字型,它是如何新增的。
動畫
動畫也是另一個突破,它變得越來越流行了。我曾經寫過一篇博文,專門介紹動畫。你可以緩慢播放動畫,也可以追蹤它的移動方式。
XPath
開發者應該聽說過“web scraping”這一術語。如果你想用“scraper”從WEB頁面抽取一些元素,可以通過XPatch在頁面上確定元素的位置。
控制檯(Console)
控制檯記錄
當你進入控制檯,可以輕鬆檢查物件。因為元素以樹形結構顯示,你可以輕鬆選中物件,或者禁止它們出現。
Console.group
不知道你沒有聽說過,可以用console.group ()函式和groupCollapsed ()函式讓事件變得更有序、更清晰?
偵錯程式
Breakpoint
好的JavaScript除錯工具是不可或缺的。有了Breakpoint,你可以輕鬆插入斷點,仔細檢查元素。
Source Maps
SCSS、WebAssembly、TypeScript、Babel,這些JavaScript技術或者CSS編譯技術變得越來越流行。正因如此,瀏覽器處理的程式碼架構往往與之前編寫時大不相同。通過Source Maps(源地圖)技術,你可以處理原始檔。
功能搜尋-專案搜尋
如果你想查詢錯誤,有一個功能很實用,這個功能幫你在眾多的檔案中查詢錯誤。
樣式編輯器
在這個編輯器內,你可以看到自己為CSS所寫的一切東西。
Performance
為了確保我們編寫的網頁快速流暢渲染(加入動畫時這點尤其重要),我們不應該忘了60fps法則。有了這個功能,你可以追蹤每一幀顯示時花了多少時間。
網路監控
CSS、JavaScript、圖片和許多其它的元素會在Network Monitor區域載入,如此一來,我們就可以通過瀏覽器解析頁面,顯示頁面。你可以利用該區域檢查效能,例如,觀察檔案的狀態,看看上傳用了多長時間,有沒有載入成功。
儲存
當使用者訪問網站時,我們用cookies儲存相關資訊,或者儲存在本地。你可以檢查、編輯、新增或者刪除資訊。
最好的思考
讓使用者從第三方產品轉移,進入自己的專利性產品,將消費者鎖在自己的軟體生態系統內,大企業的業務模式基本上都是這樣的。
不過火狐並沒有建立所謂的專利圍牆。正因如此,當你將瀏覽器換成火狐時就會容易很多。
當然,轉移仍然不是一件容易的事。你必須改變自己的習慣,改變快捷方式,改變瀏覽器擴充套件程式,儲存密碼。不過我認為改變是值得的。
讓我們再給火狐一次機會吧。
相關文章
- Firefox Quantum for Mac(火狐瀏覽器) v85.0b6開發版FirefoxMac瀏覽器
- 拖拽防止火狐瀏覽器開啟新視窗瀏覽器
- 火狐瀏覽器禁用快取瀏覽器快取
- 針對web開發者的瀏覽器快取指南(譯)Web瀏覽器快取
- 瀏覽器漏洞正被利用,谷歌、火狐使用者儘快進行更新瀏覽器谷歌
- 火狐瀏覽器相容模式怎麼設定在哪裡 火狐瀏覽器相容模式設定方法瀏覽器模式
- 瀏覽器執行緒瀏覽器執行緒
- 瀏覽器執行原理瀏覽器
- 火狐瀏覽器如何設定主頁為新標籤頁瀏覽器
- [BUG反饋]IE瀏覽器,百度瀏覽器,搜狗瀏覽器批量操作功能都不相容!!!!傲遊、火狐、谷歌瀏覽器可以瀏覽器谷歌
- 替代Edge瀏覽器?微軟開發新的瀏覽器:採用Chrome核心瀏覽器微軟Chrome
- 瀏覽器開發者工具詳解瀏覽器
- 瀏覽器渲染引擎瀏覽器
- 重學瀏覽器(1)-多程式多執行緒的瀏覽器瀏覽器執行緒
- 滑鼠右鍵相容MAC版火狐瀏覽器Mac瀏覽器
- 【工具】火狐瀏覽器歷史版本下載瀏覽器
- 瀏覽器開發者工具開啟檢測瀏覽器
- 【Net】CEF瀏覽IISExpress執行Web專案ExpressWeb
- 瀏覽器之渲染引擎瀏覽器
- firefox火狐遊覽器改成中文方法Firefox
- 火狐瀏覽器 11年未修復漏洞曝光瀏覽器
- 瀏覽器引擎、渲染引擎與JavaScript引擎的區別瀏覽器JavaScript
- Web開發學習筆記——瀏覽器是如何工作的Web筆記瀏覽器
- 前端開發者應該明白的瀏覽器工作原理前端瀏覽器
- 火狐瀏覽器(69版)修改起始頁,主頁和新標籤頁瀏覽器
- 瀏覽器渲染程式多執行緒瀏覽器執行緒
- 瀏覽器EventLoop執行過程解析瀏覽器OOP
- 在瀏覽器中執行vscode -DEV瀏覽器VSCodedev
- 瀏覽器核心渲染:重建引擎瀏覽器
- JS在瀏覽器中的執行機制JS瀏覽器
- 【總結】瀏覽器的執行緒與程式瀏覽器執行緒
- 瀏覽器多執行緒和js單執行緒瀏覽器執行緒JS
- 如何在瀏覽器裡開發並執行 SAP UI5 應用瀏覽器UI
- 瀏覽器開發者工具DevTools中提升效率的小技巧瀏覽器dev
- Web瀏覽器裡的那些事Web瀏覽器
- Midori:輕量級開源 Web 瀏覽器Web瀏覽器
- 通過 WebAssembly 在瀏覽器執行 PHPWeb瀏覽器PHP
- 如何在瀏覽器中執行 VS Code?瀏覽器