V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Misakas
V2EX  ›  Electron

怎么感觉现在随便一个软件就是 electron 写的

  •  1
     
  •   Misakas ·
    Mitsuha · 2021-04-29 14:43:06 +08:00 · 8359 次点击
    这是一个创建于 1303 天前的主题,其中的信息可能已经有所发展或是发生改变。

    看到论坛和博客推荐各种笔记和密码管理工具,于是去下了 notion 和 Bitwarden,发现无一例外都是基于 election,好感度瞬间负值。看了眼任务栏,常驻后台的 DeepL 也是 election based 。越来越讨厌,虽说现在硬盘不值钱,但是也没必要是个软件就给我装一个 chromium 吧。我已经开了十个浏览器了.jpg

    62 条回复    2021-06-03 21:03:31 +08:00
    lerry
        1
    lerry  
       2021-04-29 14:45:19 +08:00
    跨平台,门槛低,除了占硬盘空间大点,没什么不好
    Mithril
        2
    Mithril  
       2021-04-29 14:46:36 +08:00
    成本低啊,只要有个 web dev 就可以做了。公司有前端的话都不用再招人。
    你弄个原生的 UI 还要跨平台那可麻烦了。找个前端开发可比招个 QT 容易太多。
    justin2018
        3
    justin2018  
       2021-04-29 14:47:15 +08:00   ❤️ 1
    我也很讨厌用 electron 写的软件

    因为 Notion 用 Electron 写的 我放弃了 改用 Craft 了
    postman 改用 paw 了

    实在找不到代替品 那还是使用吧 哎
    renmu123
        4
    renmu123  
       2021-04-29 14:48:27 +08:00 via Android   ❤️ 4
    我挺喜欢的,electron 天生跨平台,Linux 桌面端的生态好了不少
    Misakas
        5
    Misakas  
    OP
       2021-04-29 14:52:50 +08:00
    @lerry 性能弱鸡? 其实是有些软件提供的功能不多,明明用其他语言写也是很方便的事情,却这排队在我电脑里放一个个相同的 chromium 太蠢了
    chonger
        6
    chonger  
       2021-04-29 14:52:52 +08:00
    不是码农不懂这玩意,倒是想问一下 qt 的问题,为什么基于 qt 的软件在 mac 上的中文字体那么难看,而且 ui 明显和 mac 不搭。比如暴雪的战网和 qBittorrent.
    Misakas
        7
    Misakas  
    OP
       2021-04-29 14:56:05 +08:00   ❤️ 1
    前几天玩 flutter 感觉爽多了,写 UI 也简单。也跨平台。虽然不是原生组件但好歹是绘制的性能好不少,气抖冷,flutter desktop 什么时候能站起来,
    gam2046
        8
    gam2046  
       2021-04-29 14:56:10 +08:00
    一个是现在的网络和存储成本非常低,另一个是 JavaScript 的开发成本同样很低,这当然就用脚投票了。

    至于性能?这年头大多数客户端应用都对性能不敏感,1ms 响应和 500ms 响应用户也不太能感觉出来。
    Misakas
        9
    Misakas  
    OP
       2021-04-29 15:05:15 +08:00   ❤️ 1
    @renmu123 确实 electron 有一份功劳。虽然我现在都是发现是 electron 写的就直接卸载(
    v2lhr
        10
    v2lhr  
       2021-04-29 15:11:33 +08:00
    简单,高效有何不好
    cmdOptionKana
        11
    cmdOptionKana  
       2021-04-29 15:18:29 +08:00   ❤️ 2
    @Misakas #5 “其实是有些软件提供的功能不多,明明用其他语言写也是很方便的事情”

    不要说有些,只要举出一个具体的例子就行,哪个软件在需要跨 win, mac, linux 三大平台(以及保留轻松跨 web 、小程序的潜力)的情况下,可以很轻松就做出来?
    est
        12
    est  
       2021-04-29 15:21:37 +08:00
    前端开发供过于求,桌面原生开发,C++ MFC WPF QT 都特么快绝种了
    hafuhafu
        13
    hafuhafu  
       2021-04-29 15:28:25 +08:00
    bitwarden 还好,但是 notion 那种类型的,如果不用 electron 开发桌面应用,难度和成本是不是会很高。用了 electron 不仅节省开发资源,而且 web 端和 pc 端功能和界面都能高度一致,维护也方便。
    3dwelcome
        14
    3dwelcome  
       2021-04-29 15:38:30 +08:00
    @Misakas "气抖冷,flutter desktop 什么时候能站起来", 这才出来多久,普及需要时间的。

    不过大家确实对 js 有重度偏好,也许是入门容易吧。

    传统原生 API 界面开发,要跨 Windows/Mac/Linux 三平台,一整套学习成本下去,最起码脱层皮。就算用 QT 现成的解决方案,也难学。
    cmdOptionKana
        15
    cmdOptionKana  
       2021-04-29 15:39:33 +08:00
    @3dwelcome QT 还有商用许可证的问题。
    hoyixi
        16
    hoyixi  
       2021-04-29 15:43:13 +08:00
    成本低
    现在软件和互联网厂商,都默认用户用的不爽是用户设备低配,用户自己换设备加配置去;以前的年代,写程序处处小心,考虑给用户多省点内存。
    axionl
        17
    axionl  
       2021-04-29 16:46:04 +08:00
    keepassxc 或许不错( by Qt
    IvanLi127
        18
    IvanLi127  
       2021-04-29 16:47:54 +08:00
    目前要快速开发一个支持多个平台的项目,感觉可选方案不多,期待 flutter 茁壮成长吧。
    noroot
        19
    noroot  
       2021-04-29 17:02:11 +08:00
    Qt 5.15 开始已经没有白嫖的 lts 版本了
    xiebinbin666
        20
    xiebinbin666  
       2021-04-29 17:15:24 +08:00
    多些人有付费意识 少白嫖。别人也不至于降低成本了
    miyuki
        21
    miyuki  
       2021-04-29 17:21:53 +08:00 via iPhone
    万人血书 electron rumtime
    learningman
        22
    learningman  
       2021-04-29 17:22:16 +08:00 via Android
    其实如果 electron 能出个 runtime,然后但凡是 electron 写的桌面软件,检测到 runtime 就自动把自带的删了,会是个很好的选择
    miyuki
        23
    miyuki  
       2021-04-29 17:22:46 +08:00 via iPhone
    @miyuki runtime*

    装一个 runtime,还能减小应用程序体积
    EPr2hh6LADQWqRVH
        24
    EPr2hh6LADQWqRVH  
       2021-04-29 17:25:17 +08:00
    @miyuki @learningman 这是不可能的,Electron 的 API 在不停的变,到时候每个版本 Electron 都来一个,跟没出一样。
    EPr2hh6LADQWqRVH
        25
    EPr2hh6LADQWqRVH  
       2021-04-29 17:29:50 +08:00
    十几年前 Mac 和 Linux 用户只占 1%,现在光 mac 就有 10%,有钱一点的目标群体,能达到 20%-30%;

    做个桌面应用不跨平台是不行的。

    开发、测试、维护,多少成本

    浏览器就是终极的桌面应用,只要你的应用活得够久,迟早变成浏览器类似物。

    直接上个浏览器,so easy
    nieyujiang
        26
    nieyujiang  
       2021-04-29 17:31:27 +08:00
    @learningman #21 electron 那个 api 更新速度比翻书都快.
    ltm
        27
    ltm  
       2021-04-29 17:40:42 +08:00
    感觉 Electron 渐渐成了 Linux 的 .Net 了

    趋同进化在计算机科学领域的体现
    treblex
        28
    treblex  
       2021-04-29 17:50:28 +08:00
    这么说起来,pc 平台一直没有个通用 webview,像 android 可以在系统设置选择 webview 引擎那种,如果 Electron 继续火下去的话,系统层面应该会支持的吧
    agagega
        29
    agagega  
       2021-04-29 17:51:41 +08:00 via iPhone
    恶臭 Electron 。
    本身有网页端,出个套壳的还可以理解。没有网页端的也用 Electron 新开一个,太蠢了
    Zhancha
        30
    Zhancha  
       2021-04-29 18:01:59 +08:00
    @Misakas 闲鱼已经放弃 flutter,感觉 flutter 走不 远啊
    nicevar
        31
    nicevar  
       2021-04-29 18:05:18 +08:00
    主要是门槛低,开发方便,但是运行效率是真的低,我一般下载下来发现是 electron 的软件马上就删了,真的受不了。
    charlie21
        32
    charlie21  
       2021-04-29 18:20:41 +08:00
    你知道的太多了。在普通用户眼中:
    - 哎呀这个安装包好大呀,看在是官方出品的就凑合用了
    - 哎呀这个软件好卡呀,我是不是该换电脑了
    - 哎呀玩大型游戏都没这么卡的,说明我电脑没问题,那么这个软件怎么回事 a,算了还是用回网页版吧
    最后人们在根本不知道 electron 为何物的情况下会自动筛选出一批根本不卡的软件,作为大众选择,这是人民的智慧

    最后 electron SDK 始于玩具 终于玩具 顺利成为小众自嗨产物

    据我所知,DBeaver 这个跨平台桌面软件用的 SDK 是 Eclipse RCP
    https://stackoverflow.com/questions/14667351/eclipse-rcp-vs-eclipse
    bequt
        33
    bequt  
       2021-04-29 18:42:35 +08:00
    electron 确实还是停卡的,这是实话。原生那种感觉是丝滑的。
    FreeEx
        34
    FreeEx  
       2021-04-29 19:59:08 +08:00
    我感觉很多 electron 写的软件美观大方,原生开发的太简陋了,高分屏适配也很难受。:( 我说的是 windows 。
    rebounce
        35
    rebounce  
       2021-04-29 20:01:00 +08:00 via Android
    @Zhancha #30 闲鱼又不是世界。
    akira
        36
    akira  
       2021-04-29 20:11:43 +08:00
    pc 端做原生开发的 越来越少了
    whi147
        37
    whi147  
       2021-04-29 20:26:59 +08:00 via iPhone
    做 qt 可太难了。公司又少,工资又不高
    nguoidiqua
        38
    nguoidiqua  
       2021-04-29 20:30:20 +08:00
    不然也没什么别的选择,QT 之类需求又不大,感觉也比较古老,完全没兴趣去专门学这个东西,招人的也不是很好招,哪像前端一抓一大吧,根本不需要另外招人了。

    目前希望 Flutter 搞起来,效率过得去,占用也小得多。
    learningman
        39
    learningman  
       2021-04-29 23:35:16 +08:00
    @nieyujiang #26 但是后面都是 v8,多加几个 fallback 呗
    learningman
        40
    learningman  
       2021-04-29 23:36:32 +08:00
    @avastms #24 后面都是 chromium 啊,多加几个 fallback 的事
    hei1000
        41
    hei1000  
       2021-04-29 23:58:41 +08:00   ❤️ 2
    我每次看到 electron 都是拒绝的

    有一个 electron 的替代方案 tauri ( https://github.com/tauri-apps/tauri ),不过暂时没看到什么大的火花
    Tink
        42
    Tink  
       2021-04-30 00:00:14 +08:00 via Android
    我也讨厌
    mascteen
        43
    mascteen  
       2021-04-30 00:18:54 +08:00 via Android
    lyhiving
        44
    lyhiving  
       2021-04-30 01:11:13 +08:00 via iPhone
    没有 electron,桌面应用会少很多。其实这样真的很好,简单开发,关注业务本身。说到底就是增删改查。

    今天有个同事看着我们的后台就说,这个不就是数据库界面吗?我说: “对啊,简单直接。”

    易用性要比语言底层要重要得多。

    讲求执行效率的就肯定要上各种原生兼容,这个投入很大,真的不适合现在的生态。

    你可以这样想原生类似诺基亚适配,electron 类似苹果的 app 。
    Elethom
        45
    Elethom  
       2021-04-30 06:25:58 +08:00 via iPhone
    就是游戏玩家常说的「人菜瘾大」,水平不行还非得想搞,搞出来一个四不像的垃圾。点名 Slack,带的这股恶心风气。
    Zhancha
        46
    Zhancha  
       2021-04-30 09:53:41 +08:00
    @rebounce 确实不是,但是国内最有代表性的就是闲鱼了。
    EPr2hh6LADQWqRVH
        47
    EPr2hh6LADQWqRVH  
       2021-04-30 11:41:21 +08:00
    Electron 自己才一百多兆,占空间的其实还是各种高清图。

    如果 Chrome 不卡 Electron 卡,那其实是实现的问题,滥用 remote 模块。

    做 Electron 应用其实有个隐藏门槛,必须要自己解决好 IPC 进程间通信,remote 提供了一个简单直接但互相阻塞效率灾难的。
    如果想不卡,得自己做个一全异步的
    EPr2hh6LADQWqRVH
        48
    EPr2hh6LADQWqRVH  
       2021-04-30 11:42:24 +08:00
    @learningman chromium, v8, libuv,node.js ,都有 patch,各自版本不一样,上层 API 也不一样,没法弄
    wangyzj
        49
    wangyzj  
       2021-04-30 14:01:01 +08:00
    什么都能干,但什么都干不好
    奈何成本会低很多
    资本家都是逐利的
    szzhiyang
        50
    szzhiyang  
       2021-04-30 14:14:15 +08:00
    @hei1000 Tauri 火不起来的,因为 Rust 火不起来。
    pkwenda
        51
    pkwenda  
       2021-04-30 14:14:44 +08:00
    vscode 就是 electron 写的,怎么没人说慢说卸载 ?
    LokiSharp
        52
    LokiSharp  
       2021-04-30 14:39:05 +08:00   ❤️ 1
    @pkwenda 有啊,VSCode 又慢、性能又差、、吃得又多、干得还少,只有前端和写 Electron 套壳应用的人爱用
    hei1000
        53
    hei1000  
       2021-04-30 14:39:55 +08:00
    @szzhiyang #50 近两年各大公司都加入支持 Rust 的队列了,你这句话着几年前所说我可能还同意
    pkwenda
        54
    pkwenda  
       2021-04-30 14:47:52 +08:00
    @LokiSharp #52 那你 github 的 Platform&Tools 能不能把 vscode 拿掉 ?
    LokiSharp
        55
    LokiSharp  
       2021-04-30 15:26:15 +08:00 via iPhone
    @pkwenda 不能,有些人用 VSCode 写得项目直接用 JBIDE 开全是波浪线,只能用 VSCode 看
    pkwenda
        56
    pkwenda  
       2021-04-30 15:27:42 +08:00
    @LokiSharp #55 手动大拇指
    CKHo
        57
    CKHo  
       2021-05-01 00:08:20 +08:00
    Java Swing 开发路过...我宁愿用 Swing,JavaFX 或者 PyQt 都不用 electron 写桌面软件。已经在公司写了些基于 Swing 的工具给其他部门的同事用
    dearrrfish
        58
    dearrrfish  
       2021-05-01 01:28:47 +08:00 via Android
    Bitwarden 浏览器插件+CLI 就够了
    Notion 用 PWA
    Misakas
        59
    Misakas  
    OP
       2021-05-07 11:43:29 +08:00
    @dearrrfish 刚看了一下 notion 好像不支持 PWA 呀
    dearrrfish
        60
    dearrrfish  
       2021-05-14 05:27:50 +08:00
    @Misakas #59 好像是没有,不过我用 Edge 的 Install as App,再加上前段时间 Notion 优化了 web 加载速度,用起来还不错。
    szzhiyang
        61
    szzhiyang  
       2021-05-26 01:16:42 +08:00
    @hei1000 既然如你所言「近两年各大公司都加入支持 Rust 的队列了」,那 Tauri 为什么还没激起多少火花呢?
    hei1000
        62
    hei1000  
       2021-06-03 21:03:31 +08:00
    @szzhiyang 近两年各大公司都加入支持 Rust 的队列了, 是大公司加入 Rust 一般都是公司内部系统组建或者模块用 Rust 写,Tauri 主要是替代 electron 使用 web 技术开发面向客户的客户端,两个方向都不一样,我个人还是挺期待 Tauri 替换掉 electron 的,能不能够暂且不说
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5187 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 09:14 · PVG 17:14 · LAX 01:14 · JFK 04:14
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.