我的硬盘空间不是无限大的,开发者可以选择使用electron分发它们的软件,我可以选择不安装它们的软件
做成网站需要的成本较高,需要域名、服务器、流量、证书等,而且有安全限制,有些数据是浏览器拿不到的
作为一个macOS用户来说,我更不能接受
因为兼容性问题,网站无法强制让用户更新浏览器,另外如果没有在线服务的话,网站的成本应该比软件高
我觉得还有内存占用这方面的困扰。
这方面如果用webview2的话,估计会稍微好点。毕竟和系统里的搜索界面等涉及web的界面一样,用同一个浏览器内核软件呈现界面,总的内存占用可能比自备浏览器内核要好得多。
另外最好是做一个轻量模式。也就是软件在后台时,自动关闭与webview2相关的进程来减少内存。这点tauri应该已经有了
web版不代表做网站 deepseek harness 用过没?本地跑的 127.0.0.1:端口打开,本质是本地跑了web服务
我用macos, 也无法接受electron
更不用说macos 15 更新到 macos26的前几个版本的系统bug,electron会导致电脑巨热无比
对的,这种形态其实是比较好的,比如说后端基于aria2的各种下载器、syncthing,等等
拥抱Rust吧
我到没有这个问题,我是单纯的硬盘不够用,mbp的硬盘太贵了
看使用场景:
VSCode就是Electron,微软的优化还算可以,所以它成了一款很不错的软件。
除开代码编辑器这种重量级软件,其余小工具就显得多余臃肿。
Electron根本就不应该存在,正经的开发者要么用浏览器+extension,要么用系统的GUI框架。
Electron存在的意义在于服务二流开发者的懒惰和满足白痴用户的认知。
web就一定是nodejs跑吗?不能build dist 吗?我deepseek harness 只是举个例子 aria2 你不一定知道
想先请教一个问题,如果不依赖Electron而原生开发,是不是工程量很大还要考虑UI问题?我不是开发,但就使用者角度而言,除了前面提到的一些性能和资源占用问题,我接触过的软件比如说Obsidian和VSCode,这界面长得也太像了。还有就如 @AdminAppinn 所说,如果是常驻的肯定不会考虑这类。
做个网页不一定要放在服务器上,我之前就看到过一个md编辑器,好像就一个HTML文件。
electron 可以用来搭建很漂亮的界面的桌面app。
windows其他的组件很难用。
看类型了,在浏览器中有些功能不能在非安全环境下使用。
我每天玩电脑要干两件事,一是骂别人偷懒用开发webui假装在开发gui,二是指挥ai写个网页套个壳吧就当做过gui了
作为开发者,站在用户的角度我都理解,体积大、占内存、杀鸡用牛刀,但为什么我还是用 Electron?
因为这玩意儿定位太准确了。
为什么不用 Web 网页 + Nodejs 后端这种形式来发布软件?
这种本质上是写了个网站,但部署在了用户自己的电脑上。
首先这种对于大部分用户来说,光是使用习惯就会卡住。用户已经习惯了双击后显示软件界面,但网站这种方式启动后打开的是一个网址,关闭浏览器并不等于关闭了软件,从体感上给用户的感觉这就不是啥正规的软件。
其次这种没法用 Electron 那些内置的、用于跟操作系统交互的 API。
为什么不用 Tauri?
生态跟 Electron、或者说跟 JavaScript 相比差太多了。
开发软件需要巨大的人力和时间投入,本质上就是钱。当一个软件立项之后,谁也无法预料到这个软件能不能成功、能成功到什么地步,所以无论是谁,都会在初期节约成本,甚至软件已经赚钱了也继续节约成本。
那么现在有三条路:
- 为 Windows、macOS、Linux 分别开发原生的软件,给用户最好的使用体验,但速度最慢、最花钱,可能等软件出来的时候,市场早没了,结果就是成本最高、预期收益最不稳定
- 用 Tauri,但大概率要自己写很多 Rust 代码,肉眼可见的会拖慢开发周期
- 用 Electron,你遇到的所有问题都已经被人解决了,完全没有后顾之忧,全套只用 JavaScript 代码,成本又低、速度又快,可以尽快推出市场验证需求;虽然会遭到部分用户的抵制但是 who care?软件开发出来有没有人用都还不知道
你作为开发者,你怎么选
前面无比抵制 Electron 的肯定都是那种愿意自己贴钱和时间给用户最好的使用体验的人吧
没有太多界面交互,就只是纯粹点个按钮打个勾的软件大部分时间挂在后台的软件,用 electron 就太重了
反过来有各种复杂界面交互动效的界面不用 js+css+html 这套现成的各种东西而是拿着原生框架硬造轮子也太累了
开发者喜欢的不是 electron,而是 js+css+html 能快速构建漂亮的界面还有大量现成的东西可以直接用,electron 能让 js+css+html 在所有人的电脑上相同效果跑起来所以用 electron,明天有别的方法能让 js+css+html 相同效果跑起来就换别的
不关心,好用就行