卸掉Electron!事實已證明,它也很牛!
構(gòu)建桌面應(yīng)用程序是一件很困難的事情,首先,你需要了解多種語言(例如Java或C++),值得慶幸的是,隨著技術(shù)的進步,類似ElectronJS這樣的框架出現(xiàn)了,并簡化了整個開發(fā)過程。
提到Electron相信許多程序員都不陌生,它是使用JavaScript,HTML和CSS構(gòu)建跨平臺的桌面應(yīng)用程序,可以打包為Mac、Windows、Linux系統(tǒng)下的應(yīng)用。雖然它確實很好用,但是卻有兩大致命的缺點:性能不高,內(nèi)存消耗過大;包太大。
如果你想要構(gòu)建一個Web或移動應(yīng)用程序,并且希望使用相同的技術(shù)創(chuàng)建針對Windows、macOS或Linux平臺的應(yīng)用程序。或者是你已經(jīng)用過Electron這樣的技術(shù)構(gòu)建了跨平臺桌面應(yīng)用程序,并且想要找到替代方案,那么接下來要介紹的這個神器一定不要錯過。
Tauri是一個優(yōu)秀的Electron替代品,官網(wǎng)對它的介紹是:
Tauri 是一個多語言工具鏈,可使用小型和快速的二進制文件構(gòu)建安全的原生應(yīng)用。所謂“多語言”,是指 Tauri 可使用多種編程語言,包括 Rust、JavaScript 和 TypeScript,將來還會支持 Go、C++ 和 Python 等。
它讓你可以使用任何基于 HTML 和 JavaScript 的前端框架(例如 Vue.js、React 或 Angular)來構(gòu)建原生桌面應(yīng)用,并且可以將其集成到任何管道中。
它可以幫助你為主要的桌面平臺(即將推出移動和 WebAssembly 支持)構(gòu)建和打包二進制文件
Tauri主要具有以下特性:
- 原始Tauri應(yīng)用程序的打包大小小于3 MB,比Electron的大小小140 MB
- 內(nèi)存占用小于使用相同代碼庫構(gòu)建的Electron應(yīng)用程序的大小的一半
- 安全
- Tauri 兼容任何前端框架,因此你無需改變技術(shù)棧。
- 它有許多設(shè)計模式,可通過簡單的配置選擇重要的特性。
但是底層是 Chromium 的使用者(例如Electron)無法獲得 FLOSS(自由/開源軟件) 許可。
Electron Js已經(jīng)存在一段時間了,甚至得到了開發(fā)者和Atom、Vscode等大公司的廣泛采用。接下來我們來對比一下兩者的實力:
通過上表的對比,Tauri略優(yōu)于Electron Js。但是話又說回來,Tauri 雖然殼子體積小,但并沒有成熟的 Node.js 生態(tài),功能也不夠齊全,可能在開發(fā)階段不是那么順利。所以,如果是你,你會選擇Tauri么?