tcper
V2EX  ›  OpenAI

AI 普及之后,应该把所有 Electron 重写为 native

  •  
  •   tcper · 10h 52m ago · 4952 views

    凡是基于 Electron 开发的,开着时间长,必然内存占用越来越大,界面响应越来越慢

    以前大家手写不挑你理,既然 AI 让写代码成本降低了

    感觉第一件事就应该全部迁移为 native

    大不了 macos/windows 各写一套呗,相同业务逻辑

    Supplement 1  ·  4h 38m ago
    块经常出这种帖子:一天重构了 CAD
    一周用 rust 重写了 typescript 编译器/bun
    3 天重构了 simcity
    ……

    按这个速度,把 electron 重构到 Qt/Rust/Avalonia 最多要半天吧……
    63 replies  •  2026-11-02 22:27:58 +08:00
    dnfQzjPBXtWmML
        1
    dnfQzjPBXtWmML  
       10h 47m ago
    简单组件还行,复杂功能在不同平台用不同的方案就变成地狱模式了
    sentinelK
        2
    sentinelK  
       10h 42m ago   ❤️ 2
    electron 的优势主要是在于 UI 和硬件机制的解耦,和移动 app 中的 webview 方案一样。
    这样做业务 UI 的和与硬件沟通的可以完全独立。而且 UI 逻辑是通用的。

    相反,如果是 native ,不可能舍弃原生的各种 UI 机制。这样来讲,其实不同系统的软件设计思路就都不同了。带来的结果就不光是代码量翻倍那么简单。
    Seamain
        3
    Seamain  
       10h 38m ago
    就算现在有 AI 但还是两倍的维护成本,和之前手写代码的时代没有区别。那企业肯定是不愿意的,尤其现在是降本增效的时代。
    gdm
        4
    gdm  
       10h 35m ago
    可以自己写 native 啊,反正有 ai
    我就给自己写了文本编辑器
    Oktfolio
        5
    Oktfolio  
       10h 24m ago
    我的 SSH 客户端现在是 Flutter GPUI 两个版本并行,GPUI 相较于 Flutter 包体积减少 40%,内存占用大概也降低 40%。Flutter 在包体积和内存占用上也比 Electron 好很多。
    homer
        6
    homer  
       10h 9m ago
    是的,CPU 、内存占用大幅降低,老电脑还能再战 10 年
    baizheng
        7
    baizheng  
       10h 6m ago   ❤️ 1
    想想简单, 动手就知道了
    gejun123456
        8
    gejun123456  
       10h 2m ago
    electron 版本目前有优势,生成的 html 可以方便 ai 测试比如看按钮存不存在,点击是否好用等,弄成 native 不好测试的话效率低很多。
    Mageblade
        9
    Mageblade  
       10h 1m ago   ❤️ 2
    极其讨厌浏览器套壳的一切软件!
    calvinHxx
        10
    calvinHxx  
       10h 0m ago
    来来来。用俺们的组件来整! https://github.com/calvinhxx/Fluent-Qt
    nc
        11
    nc  
       9h 53m ago
    现在 PC 性能严重过剩,微软都搞明白的道理,能用 Electron 就用,公司的 Token 可是按量计费的。
    crysislinux
        12
    crysislinux  
       9h 42m ago via Android
    人家搞 AI 世界最 top 的公司都还在用 electro 呢,其他人慌什么。
    zed1018
        13
    zed1018  
       9h 41m ago   ❤️ 1
    PC 上还有人乐意给你做 app 就偷着乐吧(
    duuu
        14
    duuu  
       9h 41m ago
    大部分业务软件都没到拼性能的地步。
    lujiaosama
        15
    lujiaosama  
       9h 29m ago
    重构的最大问题是测试成本,跑得好好的东西 你重构除了问题找你背锅你愿意吗.
    irrigate2554
        16
    irrigate2554  
       9h 10m ago
    现在 web 端前端组件太丰富了,其他技术栈想要达到类似效果得多写很多很多东西
    ano
        17
    ano  
       9h 8m ago
    基于现实来说,现在好几家新生代主打 AI 的 AI-IDE 的壳都用的 Electron ,
    Electron 还是有优势
    lovedeepl
        18
    lovedeepl  
       8h 35m ago
    Electron 生态比较成熟丰富
    lovedeepl
        19
    lovedeepl  
       8h 34m ago
    还好吧,不是特别复杂的应用
    life1st
        20
    life1st  
       8h 23m ago
    恰恰相反,所有 electron 都应该写成 browser + server 模式,包括 vscode
    Chuckle
        21
    Chuckle  
       8h 18m ago   ❤️ 1
    写代码的成本一直不是大头,管理成本会起飞的
    pk78823
        22
    pk78823  
       8h 15m ago
    @sentinelK 同意, 这是抽象出来这层的意义
    layxy
        23
    layxy  
       7h 36m ago
    等啥时候 claude desktop 和 chatgpt app 使用原生开发再说吧
    Wanex
        24
    Wanex  
       7h 29m ago
    js 这么丰富的生态我不用我给你用 native 重新手搓一遍,你猜我搓不搓
    znedyrk
        25
    znedyrk  
       7h 25m ago via Android
    反正我们的 flutter 确实是重写成 kotlin 了
    还是完全没做过移动端的人重写的
    Vaspike
        26
    Vaspike  
       7h 6m ago
    积重难返了已经, 就一个主题切换就难倒英雄汉
    不客气地说 js+html 拥有着世界最强的生态
    javalaw2010
        27
    javalaw2010  
       6h 44m ago
    AI 普及之后,当务之急是 native 尽快兼容 web 的语法
    redbule
        28
    redbule  
       6h 38m ago
    用 mygo 吧
    XIVN1987
        29
    XIVN1987  
       6h 15m ago
    站在用户的角度,,我十分赞成楼主的想法。。

    用过一个叫 balenaEtcher 的软件,,是用来往 tf 卡里面写镜像的,,界面非常简单,,只有几个按钮。。但它的 exe 文件竟然有 100 多 MB 。。

    如果改用 windows api 写,,搞不好连 1MB 都不到。。可见 Electron 浪费了多少算力、内存和能源。。
    liaohongxing
        30
    liaohongxing  
       6h 13m ago
    @XIVN1987 但是 windows api 不跨平台,那软件能跨平台。
    dinjufen
        31
    dinjufen  
       6h 10m ago
    哈哈,我也是一样的想法,我也会 Qt 和 electron 开发,但那是工作需要。我个人用 claude 自己撸了个仿 IDEA 的 native git 客户端: https://github.com/dinjufen/idea-git-tool ,欢迎大家体验并给个 star
    magicdawn
        32
    magicdawn  
       6h 5m ago
    Codex 2026 年初第一版就是 Electron, 现在合进的 ChatGPT.app 还是 Electron.

    ChatGPT Classic 貌似是 native 的, 但弃用了。
    strobber16
        33
    strobber16  
       6h 1m ago via Android
    token 的钱你来出吗
    Vaspike
        34
    Vaspike  
       5h 57m ago
    @magicdawn codex 桌面/chatgpt 的性能问题太严重了, electron 功不可没
    XIVN1987
        35
    XIVN1987  
       5h 50m ago
    @liaohongxing

    这是开发人员需要考虑的问题,,不是我们用户需要考虑的。。

    我作为用户只需要考虑我的平台上能不能用、好不好用,,谁管它跨不跨平台。。
    Atukey
        36
    Atukey  
       5h 40m ago   ❤️ 1
    @XIVN1987 #29 就这个 der 软件,之前频繁使用,跟你一样的想法,最后换了 rufus,才 1.5MB
    q000q000
        37
    q000q000  
       5h 39m ago
    Rust + GPUI 重写一切 😡
    ahzdc
        38
    ahzdc  
       5h 32m ago
    没错
    ttkit
        39
    ttkit  
       5h 32m ago
    。。。怎么感觉你说反了?开发 AI Agent ,Electron 有可能以后变成必选项,codex 和 claude code 全部是基于 Electron 做的。

    如果你做 AI Agent 用 native 只能说呵呵。
    leegradyllljjjj
        40
    leegradyllljjjj  
       5h 29m ago
    我这个软件打完包才 4mb ,内存占用也低,难以想象用 electron 会占多少内存
    ty5yidc
        41
    ty5yidc  
       5h 26m ago
    @leegradyllljjjj 你的评论图片怎么发的?
    leegradyllljjjj
        42
    leegradyllljjjj  
       5h 18m ago
    @ty5yidc chrome 插件 V2EX Polish ,啃臭键+V = 粘贴图片
    chicbian
        43
    chicbian  
       5h 14m ago
    原生的各种版本兼容非常要命,而且很多程序员都是用 mac, 天然的 ai 开发友好,比如 GPUI ,好像没怎么去做过 windows 的桌面应用适配,如果做过,就知道什么是噩梦了,比如 GPUI 在没有独显的 windows 上性能提升跟没有是差不多的,然后 windows 上的各个版本的智障适配,脑子疼,所以套壳 webview2 的方案,会更加的友好。
    junie365
        44
    junie365  
       5h 13m ago
    我怎么感觉以后 AI 会 JS 生态一把梭😂。
    thetbw
        45
    thetbw  
       5h 12m ago
    如果把本应该给 AI 用的资源分给消费级 PC ,我不敢想 Electron 会跑多快,Chrome 也不用增加“省内存模式”了,多出来的精力可以优化别的部分,这又何尝不是另一种提效。
    vsomeone
        46
    vsomeone  
       4h 53m ago
    但是 native app 很难测试诶,尤其是跨平台的 app ,Windows 10 + Windows 11 + macOS 最近三个版本 + Linux 各种发行版。Electron 的好处就在于写一次,在一个平台上测试一遍,在其他平台上基本都会有相近的表现。AI 只降低了开发的成本,测试的成本相对还是比较高的
    lolo1
        47
    lolo1  
       4h 37m ago via Android
    立一个 flag 5 年内 electron 会死掉
    Nzelites
        48
    Nzelites  
       3h 6m ago
    说反了 应该全部转到 electron ,这样产品直接生 html 能行直接用 光速迭代 谁还管你 native
    msg7086
        49
    msg7086  
       2h 53m ago
    我觉着重写一遍 bun 可比把 electron 重构到 native 简单多了。
    guin
        50
    guin  
       2h 50m ago
    怎么现在越来越多的产品都用 electron 了? opencode2 不也是改用 electron 写了,还有看网上招聘桌面客户端 wpf 的很多都要求会 electron 了
    ylsc633
        51
    ylsc633  
       2h 41m ago
    就是不好测试,不然谁不喜欢内存小的
    HTravel
        52
    HTravel  
       2h 40m ago
    为什么要用 Electron ,不就是因为涉及用户界面嘛。后端几乎可以用完整测试用例、AI 自动验证来确保转译时的 100%精确。前端是人类自己要用的,AI 要怎么保证 100%UI 效果完全一致?压根不可能,更别说不同操作系统上的提供的 GUI 组件都不等价。像我前几天还只是把简单的知乎 web app(我自己做了一个)做成 PWA 版来隐藏地址栏。就这么极其小的一个变动,iOS 上浏览器免费送的页面切换动画就没了。你慢慢让 AI 模拟去吧,模拟了半天,iOS27 上都不像,更别说返回后有些地方还会一闪,还不是全屏闪,想给 AI 描述都不容易。更别说 iOS15 上现象还不一样。这还没算安卓 PWA 。

    所以只要涉及到 UI 的,转个毛线。除非各大操作系统的源码都给你了、硬件制造工厂也让你当老板,你能全权控制了再说。

    至于 Electron 占用内存大,能大个啥。不瞎几把用的话,那些调用不到的代码/资源,早通过页交换换到 SSD 去了。最终也就是表面看起来占用内存大,实际上压根没影响。除非多个软件来回不停切换用、每个软件还什么功能都用到,导致页面交换一直进进出出打摆子,才会真的影响使用
    SnowyParadise
        53
    SnowyParadise  
       2h 17m ago
    拉倒吧,上一个用 rust 重写 vscode 的坟头草都老高了
    Lightbright
        54
    Lightbright  
       2h 11m ago   ❤️ 1
    楼上的说了这么多
    到底有哪些软件同时有 Windows + macOS + Linux 各种发行版这么多端
    还能保证 UI 交互 100%一致啊
    我看绝大多数哪怕用了 electron 的,很多端也是管杀不管埋
    软件八字没一撇呢,已经开始研究究极兼容性了。。。
    nullyouraise
        55
    nullyouraise  
       2h 10m ago   ❤️ 1
    理想很美好,现实 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 可以省去开发者很大麻烦,只要专注于你的业务逻辑就可以。原生开发给开发者增加负担不说,收益却未必明显,绝大部分人是完全不关心你的软件是用什么技术写的
    XIVN1987
        56
    XIVN1987  
       1h 55m ago   ❤️ 1
    没想到,,竟然有这么多人不看好 native ,,原因是 native 太难。。

    看来大家还是对 AI 没信心啊。。
    Facilis
        57
    Facilis  
       1h 46m ago
    参考 element 和 nheko
    zy445566
        58
    zy445566  
       1h 32m ago via iPhone
    zy445566
        59
    zy445566  
       1h 31m ago via iPhone
    zy445566
        60
    zy445566  
       1h 30m ago via iPhone
    bronyakaka
        61
    bronyakaka  
       1h 25m ago
    我用 mygo 原生 GPUI 渲染重写了我 wails 做的 agent: https://github.com/Bronya0/ally-agent 体验非常棒
    Dk2014
        62
    Dk2014  
       55 mins ago
    @Atukey 写开发板的吧😁
    Hikareteku
        63
    Hikareteku  
       10 mins ago
    太好了,又能重复造一堆轮子了 \o/
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2775 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 127ms · UTC 14:38 · PVG 22:38 · LAX 06:38 · JFK 09:38
    ♥ Do have faith in what you're doing.