V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
hongchaodeng
V2EX  ›  程序员

为什么大家这么讨厌 Electron?

  •  
  •   hongchaodeng · 2022-12-03 11:54:34 +08:00 · 22700 次点击
    这是一个创建于 755 天前的主题,其中的信息可能已经有所发展或是发生改变。

    小弟最近搞了个新项目:https://he3.app

    然后来 V2 发了一个贴: https://www.v2ex.com/t/899531#reply79

    然后发现下面好多人非常讨厌 Electron ,说要换 Tauri 。

    我在开发前也是了解 Tauri 的,而且自己也用 Tauri 写过项目。觉得 Tauri 挺好的,对 Tauri 也没有特别爱。觉得 Electron 也挺好的,技术成熟,跨平台兼容性好。但是发现好多人特别反感 Electron 。

    这是为什么呀?想听听大家的意见,弥补下自己认知的缺陷。

    164 条回复    2023-01-13 12:18:49 +08:00
    1  2  
    mmm159357456
        1
    mmm159357456  
       2022-12-03 11:56:30 +08:00   ❤️ 1
    因为“大”
    mofe
        2
    mofe  
       2022-12-03 11:56:45 +08:00 via iPhone
    可能是效率工具不希望启动慢吧
    beisilu
        3
    beisilu  
       2022-12-03 11:59:22 +08:00
    个人是因为国内移动端生态为了热更新的混合应用体验差,导致对这种套壳都没有好感。
    jorneyr
        4
    jorneyr  
       2022-12-03 12:01:08 +08:00   ❤️ 3
    大家喜欢的是小而美。
    Jirajine
        5
    Jirajine  
       2022-12-03 12:01:54 +08:00
    体积大、重、启动慢、占用多。
    看看你电脑上装了多少个 chromium 了,除了少数开源且适配 electron 新版本快的应用可以复用一下,其他的每个应用都带一份 chromium ,用户当然讨厌了。
    superrichman
        6
    superrichman  
       2022-12-03 12:03:26 +08:00 via Android
    现在不反感 electron ,因为电脑性能上来了,electron 的缺点不如以前明显。而且的确有一些很优秀的 electron 应用,体验很不错。

    但是还是有更多的 electron 应用写的太烂,还要占一大堆资源,这就很讨人厌。
    makelove
        7
    makelove  
       2022-12-03 12:04:15 +08:00   ❤️ 7
    html 不是问题,问题是明明系统 webview 已经挺好用了还要自带一个 chrome ,浪费硬盘和内存
    rekulas
        8
    rekulas  
       2022-12-03 12:06:48 +08:00
    缺点除了大之外还对客户端市场造成了不良影响

    举个例子,某笔记团队本来是用的原生开发的,使用体验尚可,后来为了节约成本换 electron ,公司倒是省了用户就无语了,占用资源多偶尔还卡死,而这样干的当然不止这一家公司

    所以大家也是苦 electron 久矣,如果能有替代品出现自然免不了一番吐槽
    不过对于 tauri 能否担负起这个重担还是持怀疑态度
    chonger
        9
    chonger  
       2022-12-03 12:10:00 +08:00
    不是码农,对 Electron 没有恶意,反而对用 mac 的我来说,Electron 使得跨平台更容易,这使得 mac 上的可用的软件得以扩充,现在好几个常用的都是如此。
    我想对于 mac 和其他小众操作系统来说,先解决有没有的问题才是最重要的吧。
    rekulas
        10
    rekulas  
       2022-12-03 12:10:09 +08:00
    @rekulas 据我所知 某些用户为了拒绝 electron 版本一直坚守使用老版本客户端
    MengiNo
        11
    MengiNo  
       2022-12-03 12:10:09 +08:00 via iPhone   ❤️ 3
    electron 只是一种妥协,或者说是开发人员牺牲用户体验换开发效率的 “偷懒”。那在明明知道有更好的预期的情况下,肯定对 electron 比较反感。

    加上能 electron 的很多都能直接 web 化、pwa 化,electron 相当于让用户没事在电脑里装 n 个 浏览器,有些人也不太能接受。

    还有就是这玩意的下限确实太拉了,只贪图快用什么二开框架随便多平台编译一下出的 “半成品”(类似 uniapp 这种,不知道桌面端是什么),和 vscode 这种 “第一方” 完全天上地下(或者说强如 vsc 其实也不尽如人意,何况其他的)
    kran
        12
    kran  
       2022-12-03 12:13:48 +08:00 via Android   ❤️ 4
    不如启动一个本地服务,用系统浏览器打开,体验也不错吧
    miv
        13
    miv  
       2022-12-03 12:15:28 +08:00
    用着这个工具了,说下体验。
    里面有几个小功能确实不错。
    而且免费,感谢开发者。
    booleturing
        14
    booleturing  
       2022-12-03 12:18:14 +08:00
    歪个楼,既然你的 He3 都用 electron 了,为什么不顺便打包一个 linux 平台的包呢?
    hez2010
        15
    hez2010  
       2022-12-03 12:19:03 +08:00   ❤️ 10
    因为 electron 又大又慢还对系统支持不好

    - electron 的窗口是自绘的,因此无法自适应系统主题、控制按钮扩展以及透明效果
    - electron 自己带一个 chromium ,然而明明系统里本身就有 WebView 控件,属于脱裤子放屁浪费磁盘,说兼容性的难道打包发布不都是直接 target 到 ES6 吗
    - electron 的主进程也是 js 写的,然而主进程涉及到消息事件循环等 CPU 较为密集的场景,性能非常烂,更别提浏览器进程和主进程相互 RPC 的性能就更拉了

    而 tauri 虽然也是 web 方案,却没有 electron 的问题
    - tauri 的窗口仍然是系统的原生窗口
    - tauri 直接调用系统自带的 WebView
    - tauri 主进程是 rust 写的,对于 CPU 密集的场景也没有性能问题
    wuyiccc
        16
    wuyiccc  
       2022-12-03 12:19:08 +08:00
    @rekulas 盲猜有道云笔记
    subframe75361
        17
    subframe75361  
       2022-12-03 12:21:43 +08:00
    如果 pwa 能访问本地目录就好了
    然而从安全性方面来说,一个网页能够持续使用客户机文件系统是不能允许的
    butanediol2d
        18
    butanediol2d  
       2022-12-03 12:22:05 +08:00 via iPhone   ❤️ 7
    我不关心性能问题,现在大家的设备性能基本都够用。

    Electron 把很多网页前端的设计带到了桌面端软件上,这是我讨厌它的关键原因,因此我对 Tauri 也没好感。

    无论是 Windows 、macOS 还是 Linux 上常用的 GTK 等,原生的控件不带那些花里胡哨的 transition 、tooltip 是有原因的,这种风格真的很不适合桌面软件,再好的优化也无法弥补。

    Electron 的性能问题又被基于 DOM 的渲染天生自带迟滞感和过度的设计放大了,导致很多用户最直观的印象就是“卡”。

    还有人用 VSCode 举例子,VSCode 的性能确实在 Electron 软件中出类拔萃,但如果花同样的精力去优化一个原生软件,相信效果会更好。
    rekulas
        19
    rekulas  
       2022-12-03 12:26:56 +08:00
    @wuyiccc 😄😄😄
    DOLLOR
        20
    DOLLOR  
       2022-12-03 12:30:27 +08:00
    @subframe75361
    chrome 现在提供了 showDirectoryPicker 接口,在用户授权使用一个目录后,就可以自由的在这个目录里读写文件了。
    jeesk
        21
    jeesk  
       2022-12-03 12:42:01 +08:00
    没啥好说的。postman 也是 eleectron 写的, 我觉得好用。
    hongchaodeng
        22
    hongchaodeng  
    OP
       2022-12-03 12:48:55 +08:00
    @booleturing 我们 CICD pipeline 里已经打包出来了~ 但是测试发现有几个功能在 Linux 上有问题,还在修复中。等修复好了发布~
    springz
        23
    springz  
       2022-12-03 12:48:58 +08:00
    Electron 的大和一股网页味道就很难受,为了跨平台网页味道就网页味道吧,还不好好优化。这个可以忍,但是大真的没法忍,每个都带一个 runtime ,系统提供的 webview 怎么不能用了?其他都能忍就每一个都巨臃肿这个不能忍。99% 场景都能用 Tauri 这种用系统自带 webview 的替代。为啥还用这玩意。
    jeesk
        24
    jeesk  
       2022-12-03 12:49:00 +08:00   ❤️ 2
    程序员天生喜欢小而美,但是多平台开发并不是那么简单的。 往往产品的实际体验使用新的技术一个是有技术风险, 新技术坑也多。 且那些天天在说用 tauri 写的,可能并没有写过什么 gui 程序,只是打打嘴炮而已 不要认真。
    hongchaodeng
        25
    hongchaodeng  
    OP
       2022-12-03 12:49:32 +08:00
    @miv 感谢亲的支持~
    springz
        26
    springz  
       2022-12-03 12:50:38 +08:00
    @jeesk 都用 Electron 了,又不是开发原生,有什么区别?
    hongchaodeng
        27
    hongchaodeng  
    OP
       2022-12-03 12:52:22 +08:00
    @jeesk 是的~ 哪怕用 Electron 我们也在跨平台上花了不少工具,测试和修复问题~
    jeesk
        28
    jeesk  
       2022-12-03 12:54:01 +08:00
    @springz 很多事情不太好说 , 如果做过 window,linux, macos 平台的桌面你就知道 技术稳定性的好处了。 总之做产品,不是技术越新越好, 这个普通用户根本不懂。
    jeesk
        29
    jeesk  
       2022-12-03 12:56:47 +08:00
    @hongchaodeng 很多人没有开发过这种跨平台的东西,不知道坑有多少。 像 electron 这种比较完善的东西,在各个平台都要处理各种兼容性,比 web 难处理太多了
    springz
        30
    springz  
       2022-12-03 12:58:04 +08:00
    用 Electron 这种的除非一些极端的需求,和 浏览器开一个 tab 没有本质区别。还要为了适应 Electron 的窗口和消息做特殊处理。真不如 pwa 或者 tauri 这种。如果特别复杂的需求像 QQ 这样的我相信 Electron 难度会比原生高很多倍。但是开发部署迭代方便。
    springz
        31
    springz  
       2022-12-03 12:59:10 +08:00
    @hongchaodeng 我注册试用了下,我觉得 pwa 比 Electron 套一层更符合产品逻辑。
    springz
        32
    springz  
       2022-12-03 13:02:23 +08:00
    或许有些功能用了其他语言写的的库,js 去调,但是 Electron 这几百兆真的坑爹。
    hhacker
        33
    hhacker  
       2022-12-03 13:06:26 +08:00
    我和 op 一样,electron 挺好的,除了搞技术的,谁会在乎里面打开是不是个网页?对于绝大多数终端用户而言,安装后点图标打开,能正常运行,就是个程序,和"其它"程序没什么区别.
    springz
        34
    springz  
       2022-12-03 13:09:43 +08:00
    关键是这个产品是给码农用的啊,主体功能网页需要本地功能的开一个没界面的 agent 网页去调都比这种方式好一点。
    springz
        35
    springz  
       2022-12-03 13:10:59 +08:00
    楼主选择发 App 推广使用就够难了,还选了 Electron 就更难了。
    nomagick
        36
    nomagick  
       2022-12-03 13:12:16 +08:00   ❤️ 16
    恕我直言 什么性能什么卡顿,不是平台的问题。

    以前纯 js 都没整明白,现在准备同时整明白 js 和 rust ,省省吧。
    人家不卡就是有魔法优化,有点出息行不。

    还有觉得用系统 WebView 就是最好的,我怀疑你没用过 XP 。

    现在没问题不代表以后没问题,操作系统是会终止支持的好不,
    你依赖系统的组件, 人家系统不更新, 乱更新, 到时候你咋办,
    有些公司新换一个 CEO ,IE 永不为奴;
    有些人的系统,啪,360 加持,走独立自主创新道路

    打铁还须自身硬,不要幻想有一个什么名词,只要我 stick to 这玩意,一切就都自动摆平了。

    自带所有依赖或者静态编译是非常有道理的,是对最终用户负责的一种处理方式。

    现在还只是简单的个人项目,放几个网页出来,讲真用啥都行。
    要是真正的商业软件或者什么,分分钟都是客户投诉,都是退款请求。
    janus77
        37
    janus77  
       2022-12-03 13:13:34 +08:00
    一方面是嘴炮,还有一方面是大家都不关心跨平台。正常用户就一个主力平台,他如果想用你的软件,在主力平台上做到体验好就 ok 了,所以他比较喜欢原生开发。至于说 tauri 的,要么没做过什么大型的 gui 程序开发,要么只是专注单平台开发,不理解跨平台的难点,他只知道“在我用的这个系统下好的框架=我喜欢的框架”
    springz
        38
    springz  
       2022-12-03 13:18:42 +08:00
    @nomagick 商业项目直接就目标平台原生或者 Qt 了,都选择 Web 了,客户端就只是一个入口了。现在新起的商业项目还是 Web 技术还需要考虑 XP ?
    springz
        39
    springz  
       2022-12-03 13:20:18 +08:00
    @janus77 在我看来是两种技术路线,Web 和原生,Qt 这种我其实是算在原生技术里的。都选择 Web 技术了。就不能选一个体验好点的吗?楼主这个 App 安装完 300 多 M ,注定推广碰壁。
    leeg810312
        40
    leeg810312  
       2022-12-03 13:21:39 +08:00 via Android
    现在用这个基本都是工具类软件,工具类应该是轻巧快速,但每个工具都是几十上百 MB ,每个运行起来都是个 chrome 浏览器,这还是工具吗?除了开发必须使用的几个,例如 vs code/postman ,不再安装其他任何基于 electron 的工具,看到一个还不错的工具软件,但只要看到介绍是 electron 就放弃
    janus77
        41
    janus77  
       2022-12-03 13:26:26 +08:00
    @springz #39 那你怎么又能证明楼主的东西体验不好呢?框架不行不等于软件不行,再说框架也不是真的不行,楼主你看到的各种文章优缺点总结只是因为用 electron 的人太多导致基数太大,你怎么知道 tauri 的基数起来以后不会有别的问题呢?说白了还是个人感觉,身边统计学。个人喜好就个人喜好,没必要用个看似合理的技术原因去否定开发者。
    springz
        42
    springz  
       2022-12-03 13:26:31 +08:00
    大家讨厌的点基本集中在为了让一个 Web 可以本地,硬套了一个 Electron ,选择 Electron 也是因为最方便,套一下就行。是网页容不下这个产品还是 PWA 浏览器插件满足不了。
    0xTSO
        43
    0xTSO  
       2022-12-03 13:28:23 +08:00
    tauri 也搞过一段时间,文档不如 electron 成熟,还有 rust 学习成本,作为搞 web 开发的,js 一条龙比较稳定,学习时间成本也是我考量的一个因素,
    有时间有精力当然可以搞 tauri ,做产品的话技术成本也要考虑的。
    cloverzrg2
        44
    cloverzrg2  
       2022-12-03 13:40:58 +08:00
    慢、 占用内存高
    Phishion
        45
    Phishion  
       2022-12-03 13:41:12 +08:00
    硬盘占用还好,关键内存占用太厉害了,随随便便大几百 M ,1G 更是家常便饭,考虑到现在市面上有很多 8+256 ,哪有那么多内存供这些大户霍霍,我电脑里如果都是 Electron 应用,那基本上也开不了几个就开始疯狂 SWAP ,唯一的优点就是对开发者友好,再来实在想不出了。

    当然这也是苹果一贯的靠 SSD 、内存换利润的结果,这个事情在 Windows 端应该好很多,苹果牛逼的统一内存,光 16G -> 32G 就要加价 3000 块钱,要都像 windows 一样几百,我估计这也不是太大的问题。
    star7th
        46
    star7th  
       2022-12-03 13:42:36 +08:00   ❤️ 2
    总有一些人追求极致性能,但他们实际上可能没怎么做过面向生产的客户端项目。真的做起来才发现,文件体积算什么啊,生态成熟才是关键,这样很多事情有现成的解决方案,才容易解决问题。
    真正问那些做过面向生产使用的人,才有帮助。单纯问一些技术党,他们当然推荐性能最高的,反正又不是自他们自己淌坑。
    shakukansp
        47
    shakukansp  
       2022-12-03 13:43:51 +08:00
    有能用 js 写的但是调 webview 的跨平台框架吗
    pigspy
        48
    pigspy  
       2022-12-03 13:51:03 +08:00
    又慢又大
    610915518
        49
    610915518  
       2022-12-03 13:51:33 +08:00
    额这里不是贴吧,讨论 Electron 就讨论 Electron 呗,从楼主的选择性回复可以看出,楼主是想借机推广产品,根本没想认真讨论 Electron ,大家不要被骗回复了
    shenhualv7
        50
    shenhualv7  
       2022-12-03 13:53:18 +08:00
    有道家的所有软件都是我体验过最差的
    bthulu
        51
    bthulu  
       2022-12-03 13:55:22 +08:00   ❤️ 6
    你安装文件 100M, 装完占用 500M, 运行时内存占用 300M.
    另外有一个功能相同的原生程序, 安装文件 0.5M, 装完占用 1M, 运行时内存占用 0.5M.
    你觉得我会选择哪个?
    Torpedo
        52
    Torpedo  
       2022-12-03 13:57:46 +08:00
    关键是 electron 代表了开发商对用户的态度:
    electron 大部分软件都是 60 分
    原生大部分体验是 70 分

    当软件厂商选择 electron 的时候,人人都知道他是为了节约成本,降低用户的体验。用户当然反对了

    至于少数 electron 的特例,比如 vscode ,那大家当然理解人家选择 electron 是因为 monacoeditor 和开源生态,而且人家的阵容豪华,还是免费的,你也不好说什么

    你看 team 传要用 electron 的时候,大家都是骂的多
    solobat
        53
    solobat  
       2022-12-03 14:07:13 +08:00
    tauri 在 macos 里性能还是不行,页面复杂了明显卡顿
    fbichijing
        54
    fbichijing  
       2022-12-03 14:10:36 +08:00
    electron 开发出来的软件,个人用起来感觉不安在固态硬盘上那卡卡的感觉都下不去,启动也慢,内存占用有些过高了。

    你那个项目——工具箱类的软件,某种程度上属于锦上添花类型的,而不是雪中送炭,也就是非其不可这一类。

    比如在实际开发时遇到工具箱中的某种功能,程序员打开命令行或许怼几行代码就解决了。复杂的话平时写成全局命令,或者自己写成一个简单的 gui 应都不算难事。程序员平时手头上谁没有积累这一类的东西,这一类的工具出问题了自己排除 bug 也简单。

    工具箱类的软件比较理想的表现形式是小巧,启动快,最好打开不占什么系统资源。它就可以一直存在,不会说开了之后一直想着用完关掉它不让它占太多资源的心里负担。
    hongchaodeng
        55
    hongchaodeng  
    OP
       2022-12-03 14:11:06 +08:00
    @610915518 不是选择性回复啊。。而是这里面大家太 opinionated 了,我都不敢回答。我也想找找 Tauri 有啥特别好的点,让我好做做选型。
    pendulum
        56
    pendulum  
       2022-12-03 14:13:45 +08:00
    既然你都用 electron 了,为啥我不直接用 web 呢?我还要下个内核打开你这个网页?
    hongchaodeng
        57
    hongchaodeng  
    OP
       2022-12-03 14:14:06 +08:00
    @fbichijing 嗯嗯对的。非常感谢你的建议!但是什么样才算小巧呢?我平时都是开个 chrome + Jetbrains 就 10 G 以上了。。
    hongchaodeng
        58
    hongchaodeng  
    OP
       2022-12-03 14:15:10 +08:00
    @pendulum 有些功能桌面端能实现,而网页端不能的。还有就是网页端跑在我的服务器上了,没法做到离线使用。
    LavaC
        59
    LavaC  
       2022-12-03 14:33:53 +08:00   ❤️ 2
    突出一个尴尬,特别对于功能单一的产品来说,软件代码本身没多少却要 100m+的安装包也挺膈应的。
    属于是开发很喜欢但对于挑剔的用户来说不太能满意的框架。
    subframe75361
        60
    subframe75361  
       2022-12-03 14:35:18 +08:00
    @DOLLOR 但是 pwa 关闭后重新打开需要重新选择,体验上不太好
    liuw666
        61
    liuw666  
       2022-12-03 14:37:27 +08:00 via iPhone
    前端代码打包后也就几 M 吧。装了 electron 暴涨 200M ,甚至更多。 不能只看安装包大小,安装解压后更大
    liuw666
        62
    liuw666  
       2022-12-03 14:45:30 +08:00 via iPhone
    是不是可以考虑做成插件放在 vscode 、idea 里。说实在工具类软件这么大,我都没有多少下载的兴趣
    MrKrabs
        63
    MrKrabs  
       2022-12-03 14:50:42 +08:00   ❤️ 1
    存储 0.5G ,内存 1G 起步
    一个临时用用还好,要是好几个一起开呢?
    rpman
        64
    rpman  
       2022-12-03 15:00:27 +08:00   ❤️ 9
    要别人写原生
    轮到自己写 Electron
    ccchigh
        65
    ccchigh  
       2022-12-03 15:11:08 +08:00   ❤️ 1
    吐槽性能问题的大概在用古董电脑吧。Discord ,Zoom 等等都是用 Electron ,还有很多大牌应用,就不一一列举了。早些年我确实用 Sublime ,这玩意确实比 VSCode 快很多,但这都啥年代了,M2 Max 都要出了,DDR5 已经有单条 512G 的了,你还在因为那一点点性能问题去选择一个开发效率非常低,兼容性又没有保障的东西,真不知道怎么想的。

    性能问题确实存在,单那是 Electron 团队的问题,作为用户来说,哪个效率高,哪个生态完善就用哪个。Sublime 的没落就是力证,性能不是一切。
    CodeCodeStudy
        66
    CodeCodeStudy  
       2022-12-03 15:29:14 +08:00
    @rekulas #8 有道云笔记是吧?我还在坚持老版本,v6.10.1.0 ,新版本 7.0 以上的就是 electron 的,渣渣一样
    jiang42
        67
    jiang42  
       2022-12-03 15:54:21 +08:00
    Electron 能流行还得怪硅工太拼命。。。Free Lunch 快要结束了
    zbn
        68
    zbn  
       2022-12-03 16:01:39 +08:00
    tauri 有应用市场吗
    jeesk
        69
    jeesk  
       2022-12-03 16:04:42 +08:00
    @rpman 哈哈哈哈
    amber0317
        70
    amber0317  
       2022-12-03 16:05:05 +08:00   ❤️ 2
    我说一个问题:一致性。
    Edge 的引擎是有点大病的,我这种菜鸡新手前端光是在学习过程中就遇到两次严重问题:
    一次是 Border 和 Content 之间有一个像素宽无法消除的缝隙,而且只在缩放浏览器窗口后会出现,Chrome 就不会;
    另一次是学 JS 的时候使用 element.prepend()插入元素,Dev Tools 检视 HTML 能看到元素插入,但页面上不会显示出来,Layout 选项卡中盒模型 Content 长宽显示为 0x0 ,同样换 Chrome 也没问题。
    Tauri 在 Windows 下默认是用 Edge 的 Runtime 的,所以很可能会继承这些 bug ,造成界面或者体验不一致。

    说个实例吧,之前做学校的课程设计的时候要求跨平台,用过一次 Tauri ,后端甚至是本地拉起的 http 服务器,不是 Rust 写的,只是用 Tauri 包个壳子。
    前端界面异常简单,没有使用任何前端界面框架或者组件,只挂了个 Vue 实例处理一下状态。
    就算这么简单的玩具项目...Windows 和 Arch Linux 下界面长得都不太一样,有一栏的高度对不上。因为不影响答辩就没有改,但是如果是更复杂的商业项目,很难说不会出更大的问题——而且这种分平台的问题会更难修复。
    这不是 Tauri 的问题,但却是 Tauri 没法解决的问题。
    icy37785
        71
    icy37785  
       2022-12-03 16:14:54 +08:00 via iPhone
    底下讨论了半天真的鸡同鸭讲,这边说 electron 使用起来多讨厌,一边说多么喜欢用 electron 开发。
    本来就是一个开发喜欢用 electron ,用户不喜欢用 electron 的问题。
    我自己也是开发愿意用 electron ,用软件能用不是 electron 开发的就尽量用 electron ,真不是那么些人说的姥爷家才卡的问题,是 electron 的软件很多呀,不能限制用户只能同时运行一个程序吧,多几个 electron 同时运行,没个 128g 内存起步谁能保证不被吃完呀。
    HiCode
        72
    HiCode  
       2022-12-03 16:16:57 +08:00
    不说讨厌,只是基于 Electron 的软件基本不会尝试。

    开发者可以选择方便自己,使用者也可以选择避开,双赢。
    Phishion
        73
    Phishion  
       2022-12-03 16:20:52 +08:00
    ![screen]( )
    zhixuans
        74
    zhixuans  
       2022-12-03 16:31:21 +08:00
    为了开发方便而牺牲性能和体验
    ChrisFreeMan
        75
    ChrisFreeMan  
       2022-12-03 16:31:59 +08:00
    看大家都喜欢原生,其实 macOS 的原生开发体验真的一言难尽,我写了半年 swiftUI ,前百分之 60 开发进度很爽,然后功能复杂后越来越难写,写到吐。Xcode 也超级难用,我真的恨死 Xcode 了。
    edwinxe2v
        76
    edwinxe2v  
       2022-12-03 16:54:36 +08:00
    lazarus-ide.org 把, 原生编译, 跨平台. 库是少点, 但贵在运行速度和编译速度超快啊!
    2PoL
        77
    2PoL  
       2022-12-03 16:56:33 +08:00
    @hongchaodeng #56 比如说网页形式的,您可以参考另一个类似的项目[codegencc]( https://codegen.cc/)。
    royzxq
        78
    royzxq  
       2022-12-03 17:08:04 +08:00
    之前 mac 版 QQ 是原生吧,有多拉胯用过的都知道吧。 现在 mac qq 是 electron 的,除了扫码登录之外体验比之前好太多了。

    这都 2202 年了,m2 pro 和 ultra 都要来了,还把那内存和硬盘空间当大宝贝是否有点...

    作为 mac 用户,本来应用就比 win 阵营少,有 electron 提供的跨端应用至少能先用上。 确实在 intel 上跨端应用确实拉(当然这其中 intel 本身也拉),但是在切到 arm 之后明显的体验好多了,自然也不在意多吃的那点资源了。

    用 windows 的内存和硬盘就更不缺了,2202 年了 win 标配总归是 16+512 了, 更别说 95%+win 设备的内存和硬盘是可以扩容的。
    blankmiss
        79
    blankmiss  
       2022-12-03 17:13:02 +08:00   ❤️ 2
    我的电脑已经存在了 64 个 chromium 环境
    blankmiss
        80
    blankmiss  
       2022-12-03 17:19:18 +08:00   ❤️ 1
    pengtikui
        81
    pengtikui  
       2022-12-03 17:30:51 +08:00
    因为这样显得自己很牛逼
    AyaseEri
        82
    AyaseEri  
       2022-12-03 17:51:41 +08:00
    比如说,macOS 自带了非常完善的 HDR 支持
    - bilibili 选择用 electron 去做 macOS 版的 bilibili 客户端,导致站点上所有的 HDR 视频都无法播放。
    - 抖音选择 electron 去做 macOS 版的客户端,导致世界杯直播只能到 4K SDR 规格。
    luoqeng
        83
    luoqeng  
       2022-12-03 17:56:32 +08:00
    JS 语言从一开始就不是给你写 App 的,只不过得益于现在的 DOM 系统提供的跨平台渲染一致性大家都想更轻松的写出各个平台都凑合能跑的软件.

    https://lemonhx.moe/2022/05/16/spa/
    elboble
        84
    elboble  
       2022-12-03 18:04:01 +08:00
    @royzxq macQQ 不定期会转圈圈,现在还是这样
    zed1018
        85
    zed1018  
       2022-12-03 18:08:28 +08:00   ❤️ 1
    因为臭桌面用户还以为现在是前二十年,桌面软件的天下,认为还有很多公司前赴后继的在做桌面客户端。实际上,如果不是有 electron ,现在很多应用根本不会考虑提供桌面版了。
    mango111
        86
    mango111  
       2022-12-03 19:05:16 +08:00   ❤️ 19
    真是笑嘻了,楼里还在那叫,实际你有选么,要不是 electron 降低了跨端的成本,很多东西你用都用不上
    一知半解的懂点原理就出来叫体验,废话你是用户你当然怎么爽叫什么,换你来开发原生试试?一套逻辑能直接成熟复用到 web ,win/mac/linux 端,包个 hybird 还能上移动端,能让多少人就迅速用上,你让人家专门为你一端好好打磨,然后其他端的人眼巴巴瞅着?
    建议不用来 v2 做调研,直接触达你的用户发体验问卷就行,绝大多数用户根本不 care 多不多几十兆里面装的是浏览器还是什么,实际上体验别太垃圾就 ok (就像微信小程序,载入时长渲染性能一泡污,但实际数据就是好),就 v2 上这么多卖弄学识的非得给你挑刺,实际也都是稍微要充点钱都要精明算账的 ROI 很低的群体,最难伺候了属于是
    WOLFRAZOR
        87
    WOLFRAZOR  
       2022-12-03 19:13:36 +08:00
    想想 android 手机和电脑,一共装了多少个 chromium 。很多无用的套壳,我没统计过。但楼上有人说了具体数量,真让人吃惊。有能力调用系统 webview 不调用是最大的问题。如果全部 Electron ,RAM 低于 32G 的电脑可以淘汰了。

    Electron 应用大部分优化和兼容并不好,资源占用高,继承了 JS 所有缺点。 [有 Electron 的一律避开]

    有楼层是非常典型的“何不食肉糜”。还有楼层说“忽视少数用户”,真的是张口就来啊。
    WOLFRAZOR
        88
    WOLFRAZOR  
       2022-12-03 19:16:27 +08:00
    说的好像原生端的就不配,原生端开发者不该活一样。难道有人真的以为安迪比尔定律失效了?
    royzxq
        89
    royzxq  
       2022-12-03 19:19:50 +08:00
    @elboble 噗,你这条回复之后没过几分钟我的新版 macqq 就开始第一次转圈圈了,这也太巧了吧。 不过转完提醒有个更新,先更了试试
    royzxq
        90
    royzxq  
       2022-12-03 19:24:36 +08:00   ❤️ 2
    要不大家来个 p-electron 吧,就和 pnpm 一样版本一致共享内核(逃
    sch1111878
        91
    sch1111878  
       2022-12-03 19:34:25 +08:00
    @mmm159357456 javafx 带着 jre 更大 😂
    shakukansp
        92
    shakukansp  
       2022-12-03 19:43:41 +08:00
    别搞了,我看了下占用内存多的也就是几个 im 软件,qq 微信 tweebot maipo
    占内存最多的除了 windowserver 就是 safari
    electron 应用,小应用普遍占内存在 150-250m
    开 ide 和 vscode 的话就多加几个 ide 和 vscode 占的内存多
    楼主的 he3 就 80M
    shakukansp
        93
    shakukansp  
       2022-12-03 19:50:45 +08:00
    @shakukansp 漏看了 helper ,那有 300M

    但是比 safari 标签页占内存少
    sakura6264
        94
    sakura6264  
       2022-12-03 21:21:02 +08:00   ❤️ 1
    electron 这玩意,不管谁怎么洗,至少我是能不用就不用。
    “能用就行,没***你还用不上呢”不应该成为烂的理由,烂就是烂,再怎么找借口它还是烂,“没***用不上”也不妨碍大家喷它。
    jhdxr
        95
    jhdxr  
       2022-12-03 22:11:02 +08:00   ❤️ 3
    1. 内存占用大
    2. 大概率是初见好漂亮,数据量一大就卡 /崩

    楼里在那说开发成本啥的,你开发成本关我用户 P 事啊。做不好可以滚,没活可以咬打火机去。又不是几大『国民级』 APP ,做不好我们用脚投票不是很正常。
    littlewing
        96
    littlewing  
       2022-12-03 22:39:10 +08:00
    @chonger 但现实情况是,很多本来已经支持多平台的原生软件,为了多平台统一维护,节省成本,换成了 electron
    ychost
        97
    ychost  
       2022-12-03 22:43:14 +08:00
    老哥,你这小工具软件 200 多 M 哇。。。
    ychost
        98
    ychost  
       2022-12-03 22:44:21 +08:00
    顺便提一下:JOSN 转 C# 的示例代码是 C++,应该放错了
    ProjectSky
        99
    ProjectSky  
       2022-12-03 23:57:44 +08:00
    因为万物皆可套壳
    pengtdyd
        100
    pengtdyd  
       2022-12-03 23:58:34 +08:00   ❤️ 2
    因为用的人太多了,体现不出技术上的“优越感”,搞点大多数人还不知道的新东西,容易吹牛皮,kpi 也好看。
    1  2  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2088 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 39ms · UTC 00:22 · PVG 08:22 · LAX 16:22 · JFK 19:22
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.