凡是基于 Electron 开发的,开着时间长,必然内存占用越来越大,界面响应越来越慢
以前大家手写不挑你理,既然 AI 让写代码成本降低了
感觉第一件事就应该全部迁移为 native
大不了 macos/windows 各写一套呗,相同业务逻辑
凡是基于 Electron 开发的,开着时间长,必然内存占用越来越大,界面响应越来越慢
以前大家手写不挑你理,既然 AI 让写代码成本降低了
感觉第一件事就应该全部迁移为 native
大不了 macos/windows 各写一套呗,相同业务逻辑
|
1
简单组件还行,复杂功能在不同平台用不同的方案就变成地狱模式了
|
|
2
electron 的优势主要是在于 UI 和硬件机制的解耦,和移动 app 中的 webview 方案一样。
这样做业务 UI 的和与硬件沟通的可以完全独立。而且 UI 逻辑是通用的。 相反,如果是 native ,不可能舍弃原生的各种 UI 机制。这样来讲,其实不同系统的软件设计思路就都不同了。带来的结果就不光是代码量翻倍那么简单。 |
|
Seamain19h 56m ago
3
就算现在有 AI 但还是两倍的维护成本,和之前手写代码的时代没有区别。那企业肯定是不愿意的,尤其现在是降本增效的时代。
|
|
gdm19h 54m ago
4
可以自己写 native 啊,反正有 ai
我就给自己写了文本编辑器 |
|
Oktfolio19h 43m ago
5
我的 SSH 客户端现在是 Flutter GPUI 两个版本并行,GPUI 相较于 Flutter 包体积减少 40%,内存占用大概也降低 40%。Flutter 在包体积和内存占用上也比 Electron 好很多。
|
|
homer19h 28m ago
6
是的,CPU 、内存占用大幅降低,老电脑还能再战 10 年
|
|
7
想想简单, 动手就知道了
|
|
gejun12345619h 21m ago
8
electron 版本目前有优势,生成的 html 可以方便 ai 测试比如看按钮存不存在,点击是否好用等,弄成 native 不好测试的话效率低很多。
|
|
9
极其讨厌浏览器套壳的一切软件!
|
|
calvinHxx19h 18m ago
10
来来来。用俺们的组件来整! https://github.com/calvinhxx/Fluent-Qt
|
|
nc19h 11m ago
11
现在 PC 性能严重过剩,微软都搞明白的道理,能用 Electron 就用,公司的 Token 可是按量计费的。
|
|
crysislinux19h 0m ago via Android
12
人家搞 AI 世界最 top 的公司都还在用 electro 呢,其他人慌什么。
|
|
13
PC 上还有人乐意给你做 app 就偷着乐吧(
|
|
duuu19 hrs ago
14
大部分业务软件都没到拼性能的地步。
|
|
lujiaosama18h 47m ago
15
重构的最大问题是测试成本,跑得好好的东西 你重构除了问题找你背锅你愿意吗.
|
|
irrigate255418h 29m ago
16
现在 web 端前端组件太丰富了,其他技术栈想要达到类似效果得多写很多很多东西
|
|
ano18h 27m ago
17
基于现实来说,现在好几家新生代主打 AI 的 AI-IDE 的壳都用的 Electron ,
Electron 还是有优势 |
|
lovedeepl17h 53m ago
18
Electron 生态比较成熟丰富
|
|
lovedeepl17h 53m ago
19
还好吧,不是特别复杂的应用
|
|
life1st17h 41m ago
20
恰恰相反,所有 electron 都应该写成 browser + server 模式,包括 vscode
|
|
21
写代码的成本一直不是大头,管理成本会起飞的
|
|
layxy16h 54m ago
23
等啥时候 claude desktop 和 chatgpt app 使用原生开发再说吧
|
|
Wanex16h 47m ago
24
js 这么丰富的生态我不用我给你用 native 重新手搓一遍,你猜我搓不搓
|
|
znedyrk16h 43m ago via Android
25
反正我们的 flutter 确实是重写成 kotlin 了
还是完全没做过移动端的人重写的 |
|
Vaspike16h 25m ago
26
积重难返了已经, 就一个主题切换就难倒英雄汉
不客气地说 js+html 拥有着世界最强的生态 |
|
javalaw201016h 2m ago
27
AI 普及之后,当务之急是 native 尽快兼容 web 的语法
|
|
redbule15h 57m ago
28
用 mygo 吧
|
|
XIVN198715h 33m ago
29
站在用户的角度,,我十分赞成楼主的想法。。
用过一个叫 balenaEtcher 的软件,,是用来往 tf 卡里面写镜像的,,界面非常简单,,只有几个按钮。。但它的 exe 文件竟然有 100 多 MB 。。 如果改用 windows api 写,,搞不好连 1MB 都不到。。可见 Electron 浪费了多少算力、内存和能源。。 |
|
liaohongxing15h 31m ago
30
@XIVN1987 但是 windows api 不跨平台,那软件能跨平台。
|
|
dinjufen15h 29m ago
31
哈哈,我也是一样的想法,我也会 Qt 和 electron 开发,但那是工作需要。我个人用 claude 自己撸了个仿 IDEA 的 native git 客户端: https://github.com/dinjufen/idea-git-tool ,欢迎大家体验并给个 star
|
|
magicdawn15h 24m ago
32
|
|
strobber1615h 20m ago via Android
33
token 的钱你来出吗
|
|
XIVN198715h 9m ago
35
|
|
q000q00014h 57m ago
37
Rust + GPUI 重写一切 😡
|
|
ahzdc14h 51m ago
38
没错
|
|
ttkit14h 50m ago
39
。。。怎么感觉你说反了?开发 AI Agent ,Electron 有可能以后变成必选项,codex 和 claude code 全部是基于 Electron 做的。
如果你做 AI Agent 用 native 只能说呵呵。 |
|
leegradyllljjjj14h 47m ago
40
|
|
ty5yidc14h 44m ago
41
@leegradyllljjjj 你的评论图片怎么发的?
|
|
leegradyllljjjj14h 37m ago
42
@ty5yidc chrome 插件 V2EX Polish ,啃臭键+V = 粘贴图片
|
|
chicbian14h 32m ago
43
原生的各种版本兼容非常要命,而且很多程序员都是用 mac, 天然的 ai 开发友好,比如 GPUI ,好像没怎么去做过 windows 的桌面应用适配,如果做过,就知道什么是噩梦了,比如 GPUI 在没有独显的 windows 上性能提升跟没有是差不多的,然后 windows 上的各个版本的智障适配,脑子疼,所以套壳 webview2 的方案,会更加的友好。
|
|
junie36514h 32m ago
44
我怎么感觉以后 AI 会 JS 生态一把梭😂。
|
|
thetbw14h 31m ago
45
如果把本应该给 AI 用的资源分给消费级 PC ,我不敢想 Electron 会跑多快,Chrome 也不用增加“省内存模式”了,多出来的精力可以优化别的部分,这又何尝不是另一种提效。
|
|
vsomeone14h 11m ago
46
但是 native app 很难测试诶,尤其是跨平台的 app ,Windows 10 + Windows 11 + macOS 最近三个版本 + Linux 各种发行版。Electron 的好处就在于写一次,在一个平台上测试一遍,在其他平台上基本都会有相近的表现。AI 只降低了开发的成本,测试的成本相对还是比较高的
|
|
lolo113h 55m ago via Android
47
立一个 flag 5 年内 electron 会死掉
|
|
Nzelites12h 25m ago
48
说反了 应该全部转到 electron ,这样产品直接生 html 能行直接用 光速迭代 谁还管你 native
|
|
msg708612h 12m ago
49
我觉着重写一遍 bun 可比把 electron 重构到 native 简单多了。
|
|
guin12h 8m ago
50
怎么现在越来越多的产品都用 electron 了? opencode2 不也是改用 electron 写了,还有看网上招聘桌面客户端 wpf 的很多都要求会 electron 了
|
|
ylsc63312h 0m ago
51
就是不好测试,不然谁不喜欢内存小的
|
|
HTravel11h 59m ago
52
为什么要用 Electron ,不就是因为涉及用户界面嘛。后端几乎可以用完整测试用例、AI 自动验证来确保转译时的 100%精确。前端是人类自己要用的,AI 要怎么保证 100%UI 效果完全一致?压根不可能,更别说不同操作系统上的提供的 GUI 组件都不等价。像我前几天还只是把简单的知乎 web app(我自己做了一个)做成 PWA 版来隐藏地址栏。就这么极其小的一个变动,iOS 上浏览器免费送的页面切换动画就没了。你慢慢让 AI 模拟去吧,模拟了半天,iOS27 上都不像,更别说返回后有些地方还会一闪,还不是全屏闪,想给 AI 描述都不容易。更别说 iOS15 上现象还不一样。这还没算安卓 PWA 。
所以只要涉及到 UI 的,转个毛线。除非各大操作系统的源码都给你了、硬件制造工厂也让你当老板,你能全权控制了再说。 至于 Electron 占用内存大,能大个啥。不瞎几把用的话,那些调用不到的代码/资源,早通过页交换换到 SSD 去了。最终也就是表面看起来占用内存大,实际上压根没影响。除非多个软件来回不停切换用、每个软件还什么功能都用到,导致页面交换一直进进出出打摆子,才会真的影响使用 |
|
SnowyParadise11h 35m ago
53
拉倒吧,上一个用 rust 重写 vscode 的坟头草都老高了
|
|
54
楼上的说了这么多
到底有哪些软件同时有 Windows + macOS + Linux 各种发行版这么多端 还能保证 UI 交互 100%一致啊 我看绝大多数哪怕用了 electron 的,很多端也是管杀不管埋 软件八字没一撇呢,已经开始研究究极兼容性了。。。 |
|
55
理想很美好,现实 Electron 只会越来越多
上半年开始,我用 Rust+GPUI+gpui-kit 做了个 Agent 和终端二合一的 GUI ,想法很简单,就是现在的 Electron 应用已经太多了,我个人也更喜欢原生技术,速度快、二进制体积小,怎么看都有各种优点,实际上迭代了三个月,现在我已经想用 Electron 重写了,主要有几个原因: 1. 原生应用开发效率远不如 Electron 。Rust 编译慢、Electron 应用大部分时间都能实时预览就不说了,Electron 支持 DevTools ,Agent 可以直接连接上应用进行 UI 调试,这个 Rust 应用开发时为了提升 GUI 调试效率,我还写了套自动化接口给 Agent 用,但是使用 Electron 根本不存在这个问题; 2. Electron 依托 Web 生态,npm 提供海量现成的解决方案;开源社区里的平台原生解决方案相比 npm 还是太少了。最近我想给 Agent 对话页增加 Mermaid 图渲染功能,GPUI 和 gpui-kit 都不提供,又要手工维护一堆 Rust 代码,这是最近劝退我的最核心原因; 3. Rust 项目在不调整配置的情况下,target 中间目录占用大量硬盘。虽然 node_modules 是无底洞,但和 Rust 项目比也是小巫见大巫了。编译 Codex 出来就占 110GB ;我这个个人项目本地 target 目录一度高达 500GB ,又是改配置,又是清理,最后才稳定在 50G 以内; 4. 原生应用跨平台适配麻烦。最开始我只做了 Windows 版,后来有个朋友想用 Mac 版,我抽了一天适配了一下,虽然 AI 只要一天就适配好了,但是总归还是有工作量的。后面再迭代时,每次我都要在 Windows 上测一遍,再到 Mac 上再测一遍,用 Electron 基本没有这个烦恼。 总结下来,使用 Electron 可以省去开发者很大麻烦,只要专注于你的业务逻辑就可以。原生开发给开发者增加负担不说,收益却未必明显,绝大部分人是完全不关心你的软件是用什么技术写的 |
|
56
没想到,,竟然有这么多人不看好 native ,,原因是 native 太难。。
看来大家还是对 AI 没信心啊。。 |
|
Facilis11h 4m ago
57
参考 element 和 nheko
|
|
zy44556610h 51m ago via iPhone
58
|
|
zy44556610h 49m ago via iPhone
59
|
|
zy44556610h 48m ago via iPhone
60
|
|
bronyakaka10h 43m ago
61
我用 mygo 原生 GPUI 渲染重写了我 wails 做的 agent: https://github.com/Bronya0/ally-agent 体验非常棒
|
|
Hikareteku9h 28m ago
63
太好了,又能重复造一堆轮子了 \o/
|
|
asuka029h 9m ago
64
@leegradyllljjjj 你这个用的什么 Native 做的
|
|
nrtEBH8h 44m ago
66
不是重写 Electron 应用 是直接重写 Electron 用更 Native 的方式去实现这个框架
|
|
humbass8h 37m ago
67
和楼主感觉相反,现在连工厂开发桌面端的,能转 electron 都转过来了。除非是老项目大量依赖 C# 的项目。
下一步 node.js 继续迭代到 直接可以调用调用 C++(像 python 那样),这些写 C# 的都会失业。 |
|
nightwitch7h 56m ago
68
AI 写 electron 比写 native 快太多,因为 electron 生态太好了,而 native api 各有各的奇葩。
这样发展下去只会产生越来越多的 electron 软件。 |
|
zerovoid4h 36m ago
69
除非内存白菜价,
不然占用低的应用肯定是有市场的, 以前开发者重构一个软件成本太高了, 现在重构一个成本大大下降, 我觉得打着低内存占用的旗号, 重新抢占 PC 软件市场,会是个新赛道。 |
|
untitledabc25 mins ago
71
还有把那堆 node 和 python 写的 mcp 给铲除,启动又慢,文件系统到处拉屎,又巨废内存。
|
|
charlie2118 mins ago
72
codex 客户端本身就是 electron 写的,为什么他们不用平台原生框架呢?是为了在开发效率、多平台统一和维护成本之间取得最佳平衡。跨平台代码复用,web 技术对设计稿的还原能力,产品功能快速迭代:基于 web 技术的跨平台框架依然有优势
|