Electron:方便是好,但代价你可能真没想到

Electron:方便是好,但代价你可能真没想到

七月 19, 2026 electron desktop-apps cross-platform web-development user-experience software-architecture performance security

那些年我们用过的 Electron 应用:为什么它们总是差点意思?


说句实在话,不知道你有没有这种感觉——下了一个桌面软件,用起来总觉得哪里不对劲。

功能都有,勉强能用,但就是不得劲。文字小得眯眼看,窗口行为跟别的软件不太一样,内存更是吃得飞起。

恭喜,你大概率装了个 Electron 应用。

什么是 Electron?

简单说,Electron 是个框架,让开发者用网页那套技术——HTML、CSS、JavaScript——来写桌面软件。

听起来很美对吧?前端程序员不用学 Windows、macOS、Linux 的原生开发,一套代码全搞定。资源有限的创业团队简直狂喜。

但问题是——

宣传材料不会告诉你的那些事,全在这儿了。

"披着外套的浏览器"

有个开发者形容得好:Electron 应用就是"穿着风衣假装是本地软件的浏览器"。

这话一点都不冤枉它。

你的桌面应用里,实际上跑着一整个 Chromium 浏览器实例。完整的 JavaScript 引擎,完整的渲染引擎,所有开销一个不落。

于是你就会看到这种名场面:

  • 一个邮箱客户端,占的内存比大型游戏还多
  • 一个笔记软件,打开要三秒钟
  • 标榜"轻量"的小工具,后台跑着跟挖矿似的

网页版居然更好用?

最让人无语的来了。

很多应用,网页版反而比桌面版更流畅

同样的代码,同样的功能,浏览器里打开就是更跟手、反应更快、哪儿哪儿都更顺。

凭啥?

因为浏览器这二十年一直在被疯狂优化。各家浏览器厂商卷性能卷得飞起。系统更新的时候,网页渲染组件会自动跟上安全补丁。

但 Electron 应用呢?它自带的 Chromium 版本是打包进去的,冻结在那个时间点。除非开发者想起来更新——还不一定啥时候——不然就一直是那个版本。

这不是在吓唬人。安全研究人员已经记录过不少案例,Electron 应用里带的 Chromium 组件有已知漏洞,就这么上线了。

你正在用来看这篇文章的浏览器?可能你已经刷新了三次了。

你桌面上的那个 Electron 软件?可能还在跑两年前的代码。

用起来有多别扭?

聊聊使用体验。

用原生 macOS 或 Windows 软件,你会理所当然地期待一些操作:Command+滚轮缩放文字、窗口拖拽调整大小、快捷键和其他软件保持一致。

Electron 应用经常打破这些期待。不是开发者不上心,很多开发者其实很用心。但 Electron 这个框架天生就不是为模仿原生体验设计的。

这就好比让鱼爬树,然后纳闷它怎么这么累。

我都不记得有多少次了,在 Electron 应用里调字号,调了半天不知道改没改成功,反复去预览确认。在网页上?Control+加号就搞定了,或者直接两指捏触控板。但这种"高级功能",某些桌面软件表示理解不了。

WebView:没人满意的折中方案

那有没有别的办法?

有些开发者转而用 WebView——这是系统级别的组件,用系统自带的渲染引擎来显示网页内容。比 Electron 效率高,因为网页引擎是系统共用的,安全更新跟着系统走。

但 WebView 也有自己的麻烦。

不同操作系统用的网页引擎不一样。你的软件在 Windows 上和 macOS 上看起来可能有点差别。"写一次,到处运行"这个承诺,开始出现裂痕。

说句真心话:没有完美的解决方案。

原生应用性能和体验最好,但得为每个平台写一套代码。Electron 开发方便,但牺牲资源占用和安全。WebView 嘛,两边各占一点,两边都不太舒服。

那该怎么办?

如果你是开发者,在做桌面软件之前,真的好好想想 Electron 适不适合你。替用户想一想。想一想有人可能会在网上发帖说你的软件是"穿着风衣的浏览器"。想一想"在我这儿能跑"这句话,当你打包了一整个浏览器进去的时候,有了完全不同的分量。

如果你是用户,别因为抱怨那个卡成狗的 Electron 应用而不好意思。你的糟心是合理的。内存占用大、界面不统一、文字小得看不清——这些不是小毛病,是实实在在影响你干活效率的事,值得被解决。

说到底,我们应该做的是既尊重开发者,也尊重用户的工具。

有时候选方便的,有时候得多下功夫把事做对。

问题不在于 Electron 好不好,而在于它适不适合你想做的事。

那个"穿风衣"的比喻之所以传得开,是因为它说到了点子上——本质上是伪装。

Electron 应用经常给人一种在假装是什么的感觉。

也许,是时候停止伪装,做一个清楚自己是什么的软件了。

Read in other languages:

RU BG EL CS UZ TR SV FI RO PT PL NB NL HU IT FR ES DE DA EN