前几天去 electron 官网看了下,差点惊掉下巴,记得我一年多前把玩 electron 的时候才 5.0,现在版本号已经飙升至 9.0,现在版本这么不值钱的吗?而且要开发个 electron app,被动升级也太频繁了。
我去看 electron 的主要原因是想瞧瞧 electron 有没有可能和 deno 结合,结果看到一个 issue 提出同样问题,被项目贡献者无情否定:electron 需要将 node 与 chromium 同时编译,而 chromium 的编译工具不支持 rust 与 c++混编。
我回想了一下我对 electron 的主要不满:
我曾经也寄希望于 react native for desktop,不过这个感觉没发展起来,随着 RN 逐渐没落,这个更没指望了。
我之所以对 deno 报以期望,是因为它的设计目标之一就是对桌面应用的支持,主要是两个重要特性:应用沙箱和浏览器兼容。而它的单一可执行程序特性也是对桌面应用非常友好的。
不过现在指望 electron 支持 deno 是从底层上彻底没希望,社区目前对于 deno 开发桌面应用的尝试是 webview-deno 项目(link),用 deno 调用系统级 webview 。
我依稀记得之前见过这样的思路,不过各个操作系统的 webview 所用的引擎差异很大,因此兼容性不太好,这也是为什么 electron 要带个 chromium 的原因,我觉得这条路是走不通的。
所以 deno 啥时候能有个好用的桌面应用框架呢?
1
est 2020-06-19 18:13:05 +08:00
|
2
agdhole 2020-06-19 18:14:21 +08:00 via iPhone 1
reactnative-windows 已经来了
|
3
love 2020-06-19 18:28:22 +08:00
感觉调用本地浏览器的做法比打包一个更好。
electron 刚出现时就如 LZ 说的各个操作系统的 webview 所用的引擎差异很大,因此兼容性不太好,现在已经没这情况了。 |
4
Nicify 2020-06-19 18:36:58 +08:00 via iPhone
等 deno + webview 2
|
5
yoggsaron 2020-06-19 18:39:09 +08:00
Rust 有一个类似 Electron 的框架。https://github.com/tauri-apps/tauri
至少打包体积和内存占用小了很多。 |
6
find456789 2020-06-19 20:06:29 +08:00
rn 啥时候没落了啊。好想还没有吧
|
7
Jirajine 2020-06-19 20:20:02 +08:00 via Android
下一代就是用系统 native webview 的方案,最著名的就是这个 https://github.com/webview/webview
楼上发的 tauri,还有 go 的 wails,以及其他各种语言的 band 都是基于这个的。 |
8
xi_lin 2020-06-19 20:25:48 +08:00
@find456789 rn 现在国内风头完全被 flutter 压制
|
10
huai 2020-06-20 12:16:05 +08:00
都没用在生产环境过,了解一些。
react 技术栈 过渡到 rn 非常快吧。 flutter 大多是都是尝鲜,甚至 KPI 好看。 觉得真到那么大的体量,需要考虑性能问题。到时还是 native 为主? |
12
zakarycode 2020-06-25 15:08:18 +08:00 via Android
flutter 主要是 KPI 项目吧,除了闲鱼也很少见其他的应用了,吹牛逼听的比较好听 😂
(大厂用 rn 也是自己封装的版本) |
13
susix 2020-07-04 09:01:55 +08:00
一直觉得 electron 可以单独抽出来作成 runtime 形式的,类似 jre
|