Electron與其它跨平臺桌面端框架對比

Tauri與Electron的區(qū)別

  • 它沒有裹挾一個瀏覽器內(nèi)核在最終包內(nèi)。這也是它 包小 的原因

  • Rust調(diào)用系統(tǒng)的 Webview,來承載開發(fā)者的前端代碼,所以,需要處理 兼容性

    • 不現(xiàn)操作系統(tǒng)帶的 WebView 版本不同,前段代碼需要處理瀏覽器兼容性

    • 甚至系統(tǒng)可能沒有 WebView 需要單獨處理(包里帶一個webview?那和electron有何區(qū)別)

      【官網(wǎng)】:Tauri應(yīng)用程序在macOS上運行所需的最低操作系統(tǒng)版本為10.13

      【官網(wǎng)】:默認(rèn)情況下,Microsoft安裝程序(.msi)在Windows 7上不起作用,因為如果未安裝,則需要下載 WebView2引導(dǎo)程序(如果操作系統(tǒng)中未啟用TLS 1.2,則可能會失敗)。Tauri提供了一個嵌入WebView2引導(dǎo)程序的選項(請參閱下面的嵌入WebView 2引導(dǎo)程序部分)?;贜SIS的安裝程序(-setup.exe)也支持Windows 7上的下載引導(dǎo)程序模式。

      【官網(wǎng)】:我們建議對 browserlist 和構(gòu)建目標(biāo)使用 es2021, last 3 Chrome versions, 和 safari13 。 Tauri 可以借用操作系統(tǒng)的原生渲染引擎(macOS上的WebKit,Windows上的WebView2和Linux上的WebKitGTK)。

  • 性能:兩者本質(zhì)上都是基于 Chromium(windows 也切到 Chromium,非 Chromium 的 Webview 性能也沒好到哪里去),前端代碼渲染上差距很小,且由于 Tauri 多一個線程(為了多個進程共享運行時庫搞出來的),理論上 Tauri 會更差一些

    但實際上,

    electron hello world

    tauri hello world

    上圖是兩個hello world項目,electron 120M - tauri 60M,tauri小一半(這么看是挺香的,什么兼容性還是可以忍的)但我是MAC,webview 不是 Chromium 是 webkit,所以是不是說 tauri 性能差異也很大

    Electron 進程模型

    基于 WebView2 的應(yīng)用程序進程模型
  • 生態(tài):就 API 數(shù)量上來看,Tauri 大大少于 Electron。且 Rust(Tauri) 遠(yuǎn)比 Node(Electron) 門檻高,如果需要定制話一功能,比如需要使用本地數(shù)據(jù)庫 Sqlite,Tauri 只能以 Rust 開發(fā),或者依賴社區(qū)輸出封裝 Sqlite 的 Rust For Js 包,Node 可以調(diào)用

    Electron API
    Tauri API
  • 安全性:Electron 非主進程代碼會輸出的是 ASAR 文件,Tauri 是流文件??雌饋?Tauri 是更安全的,但是在前端代碼上談安全性,嗯....

Wails 基于 GO

渲染模式和 Tauri 一樣,比較新,目前屬于一個要啥啥沒有的階段。有人是這么推薦的:喜歡 Rust 用 Tauri,喜歡 GO 用 Wails,都不會且沒有定制化需求用 Tauri,否則老實用 Electron

Neutralino

渲染模式和 Tauri 一樣,但它號稱

You can extend Neutralinojs with any programming language (via extensions IPC) and use Neutralinojs as a part of any source file (via child processes IPC).

目前社區(qū)不活躍,作為一個5年+的項目,整體比 Tauri 差很多

官方做了一個 Electron、Tauri、NodeGui、Wails、Neutralino、Flutter 各方面比較

主要特征
包大小
內(nèi)存占用
啟動時間

from:

https://tauri.app/zh-cn/v1/guides/building/windows/

https://mp.weixin.qq.com/s?__biz=MzI1MjAzNDI1MA==&mid=2648216340&idx=2&sn=f5c568bcfd02598ee761d4940509ed77&chksm=f1c5deb1c6b257a70dfe4e0fa686d6e3e34f7c2fdc77a388b5665d3f374515da526fdfc7b5b5&scene=27

https://www.zhihu.com/question/396199869/answer/2278939845

https://www.libhunt.com/compare-tauri-vs-wails

http://news.sohu.com/a/647236559_827544

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容