美文网首页
Electron与其它跨平台桌面端框架对比

Electron与其它跨平台桌面端框架对比

作者: 我叫Aliya但是被占用了 | 来源:发表于2023-09-14 21:54 被阅读0次

    Tauri与Electron的区别

    • 它没有裹挟一个浏览器内核在最终包内。这也是它 包小 的原因

    • Rust调用系统的 Webview,来承载开发者的前端代码,所以,需要处理 兼容性

      • 不现操作系统带的 WebView 版本不同,前段代码需要处理浏览器兼容性

      • 甚至系统可能没有 WebView 需要单独处理(包里带一个webview?那和electron有何区别)

        【官网】:Tauri应用程序在macOS上运行所需的最低操作系统版本为10.13

        【官网】:默认情况下,Microsoft安装程序(.msi)在Windows 7上不起作用,因为如果未安装,则需要下载 WebView2引导程序(如果操作系统中未启用TLS 1.2,则可能会失败)。Tauri提供了一个嵌入WebView2引导程序的选项(请参阅下面的嵌入WebView 2引导程序部分)。基于NSIS的安装程序(-setup.exe)也支持Windows 7上的下载引导程序模式。

        【官网】:我们建议对 browserlist 和构建目标使用 es2021, last 3 Chrome versions, 和 safari13 。 Tauri 可以借用操作系统的原生渲染引擎(macOS上的WebKit,Windows上的WebView2和Linux上的WebKitGTK)。

    • 性能:两者本质上都是基于 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 的应用程序进程模型
    • 生态:就 API 数量上来看,Tauri 大大少于 Electron。且 Rust(Tauri) 远比 Node(Electron) 门槛高,如果需要定制话一功能,比如需要使用本地数据库 Sqlite,Tauri 只能以 Rust 开发,或者依赖社区输出封装 Sqlite 的 Rust For Js 包,Node 可以调用

      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).

    目前社区不活跃,作为一个5年+的项目,整体比 Tauri 差很多

    官方做了一个 Electron、Tauri、NodeGui、Wails、Neutralino、Flutter 各方面比较

    主要特征 包大小 内存占用 启动时间

    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

    相关文章

      网友评论

          本文标题:Electron与其它跨平台桌面端框架对比

          本文链接:https://www.haomeiwen.com/subject/eetvvdtx.html