最近好多 GUI 之争,我来给 Electron 站一票,理性讨论

354 天前
 Loxon

最近看到几篇类似的讨论: https://www.v2ex.com/t/1005711 https://www.v2ex.com/t/1005903

正好我也面临类似的问题,合理讨论下,先说明下需求:

  1. Win+Mac+移动端 桌面端为主用户群体,移动端会简单一些
  2. 工具类产品,除了 GUI 层面的需求外,核心功能会用到原生 OS 的 API ,所以各端必然有小部分核心代码是不一样的
  3. 整体 App 属于中等 App ,所以我不严格追求包大小,在我看来桌面端 50M~200M 都属于用户能接受的中等 App 的范畴
  4. App 里绝大部分以界面交互为主,Webview 有但也有限,可能仅仅辅助使用;性能要求也不高;
  5. 不希望用户主动安装依赖(之前基于.Net 开发的 Win App 需要用户手动安装依赖的痛苦回忆...)

基于以上需求,感觉 Electron 是最适合的,有没有人提供下不同的思路见解?

20707 次点击
所在节点    程序员
138 条回复
Yjhenan
354 天前
avalonia 用 aot 编译,不用再装 .net 了吧?其 hello world 的 aot 产物用压缩包压缩下,也只有 10 兆大小
wyl986
354 天前
electron 有一个好处:就是把一些 electron 特有的 API (主要是调用硬件的)直接绑在 window 上,然后用 electron 套一个网页;更新的话直接更新网页,可以避免更新整个 electron ,而且还可以无感强制更新; electron 打包之后再小也有 50m+,用户量大了 cdn 流量也遭不住
icyalala
354 天前
作为开发来说,我也推荐 Electron ,甚至 Flutter 我觉得也是可选的。
但从用户角度出发,我只想要原生的 App 。
davidjqq19
354 天前
Electron 就是安装包大了点,写个 Hello World 都得几十 M ,其他没啥毛病。
sheeta
354 天前
作为用户我不支持 electron ,我可不想在我的电脑上塞 N 多个 Chrome 。
debuggerx
354 天前
nno
354 天前
我投 egui
adoal
354 天前
作为用户我只想用原生 app……但是想到我很少为优秀的原生 app 付钱,那么,作为雪花,我不是无辜的
leaflxh
354 天前
我觉得 electron 能像 Java JRE 一样,出几个稳定版的浏览器包作为运行时就好

这下就像安卓的"快应用了"
leaflxh
354 天前
@leaflxh

同时操作系统预装,类似于安卓的 webview
dbskcnc
354 天前
loginv2
354 天前
我推荐 core + webui 。这样 java 也好 python 也好,或者其他什么语言都是打包一个环境 然后该干的活后台干,前台交给浏览器。如果需要 UI 实现某些特性,单独用特定平台的 webview 技术来做维护
Worldispow
354 天前
从用户角度来看,electron 就是一坨屎。

v2er 也挺有意思的,app 占空间大就狂喷,轮到自己成为开发者时又不在乎大小了。
lstz
354 天前
electron 太过笨重,实际上绝大多数应用都只需要一个单窗口,所以我更推荐 PWA 或者轻量级 web 桌面框架

至于用户体验,我认为除了真正程序上的 benchmark ,更多与用户交互也是强相关的。

最近在做一个开源项目,https://github.com/work7z/LafTools ,计划也是用轻量级 web 实现,曾经无数次想用 native UI ,但框架少库少,让我实在不敢赌
pursuer
354 天前
现在 Electron 支持移动端了吗?以前我记得是不支持的
Bingchunmoli
354 天前
作为用户反感 Electron.
elevioux
354 天前
在写 python 脚本调 chatgpt 接口的时候,想做一个简单的对话窗口。

看了一下 pyqt,tk 文档,看着烦。

直接用 pyqt 的 webview ,再写一个 jsbridge 让 浏览器 js 和 python 能够通信,就这么用着了。
superchijinpeng
353 天前
我投 Tauri 一票
jones2000
353 天前
不都是套壳浏览器吗?
hanxiV2EX
353 天前

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1006050

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX