求教写跨平台的桌面 gui 程序, electron 是不是个好的选择?

2017-12-12 20:31:32 +08:00
 jahan
目前看下来,个人觉得好处好像是,可以直接用网页的 js 代码,很多逻辑可以直接抄袭;
坏处好像这个节点很多人对 electron 嗤之以鼻,可是又没有人总结,也没有人给出更好的解决方案。
是不是 1,安装包太大了? 2,慢?
大家能不能指一条路呢。
20261 次点击
所在节点    Node.js
61 条回复
Rice
2017-12-12 22:08:11 +08:00
然而他们很多人都在用 atom 和 vscode。
你有网页的基础,要开发快就用。你应该也知道有什么坑了。ps:面向客户的话先问清楚,我们这边曾经用 electron 开发了客户端,开发完了客户才说 electron 是网站,太 low,不安全云云,于是还用 pyqt 重做。
Lpl
2017-12-12 22:11:28 +08:00
以前做过简单的开发...嗤之以鼻有一部分原因是中文文档和分享太少。记得云音乐以前好像用的这个
shiny
2017-12-12 22:13:26 +08:00
个人项目的话,哪个开发效率高用哪个。
dcalsky
2017-12-12 22:13:39 +08:00
electron 框架在跨平台开发方面已经算比较成熟了,只要你不搞太底层的开发那么坑不大(上次做文件系统被坑惨了)。而且结合社区积累的知识点、解答的问题,应该能度过很多坑了。看你是不是能熟练使用搜索工具了。

1、安装包大。确实是一个问题,但是在 mac 下,其实各个软件体积都还挺大的。或者可以试试这个打包: https://github.com/electron-userland/electron-forge ;但是你的软件有特别要注重体积的应用场景吗?

还有 js 文件暴露的问题。意味着如果你要做一些安全方面的开发,请尽量在后端搞。

2、慢。看你说是哪一方面的了。编程语言? UI 渲染?还是网络请求?如果你不做高密度计算工程,如果慢,那就不是框架的问题。

补充一点:vscode 基于 electron 开发的案例,不能作为普通开发者的参考。
duan602728596
2017-12-12 22:14:22 +08:00
用的 nwjs,react 全家桶配合 node 美滋滋
alang
2017-12-12 22:20:30 +08:00
近期的 GUI 全部用 electron + vue 来开发了。迅速。

至于上面又说中文资料少的,我最鄙视这种人了。资料已经不少了,踩过的坑基本都能找到文档,英文的也看的懂。还拿中文文档说事情的人,你这辈子也就这点出息了。

说 low 的那些客户,我是没遇到过,反而称赞界面更漂亮了,更现代化了。

能够迅速的完成开发,快速迭代,客户能很快的拿到工具开始用,这个已经非常值得了。

赶紧做,别想那么多。
ivechan
2017-12-12 22:26:35 +08:00
electron is flash for the desktop.
ivechan
2017-12-12 22:30:00 +08:00
可怕的是 electron 是个初期的 flash(可能刚刚开始), 而不是现在被淘汰的 flash.
当然了, 我觉得用 electron 是现在最好的选择(就像 flash 当时也是最好的选择一样)

当你电脑上有一个 electron 应用的时候你会称赞它, 并且被它的外表所吸引, 可能会嫌弃其他应用.
当你电脑上所有应用都使用 electron 的时候, 一切变得就不那么美好了.
someonetwo
2017-12-12 22:38:44 +08:00
主要看应用类型了,如果是偏向底层的应用软件肯定不合适,如果偏网络应用的,而且大部分在 web 上就能操作的,那这个是最合适了。
nicevar
2017-12-12 22:44:06 +08:00
electron 适不适合是看你的需求的,如果应用与操作系统结合比较多,对性能要求很高就不太适合,如果只是做一些业务逻辑的东西问题不大,所以先调研一下,别最后做到后面发现有问题解决不了推倒重来就麻烦了,技术调研很重要的,近几年遇到好几家公司就是死在移动客户端上,一开始用 html5 开发 app,到后期快上线了发现有解决不了的问题
learnshare
2017-12-12 22:47:08 +08:00
Electrom 或者 QML 吧
jahan
2017-12-12 23:07:46 +08:00
感谢大家热情回复。
@nicevar 性能要求不高,个人用的管理软件而已,需要一部分网络通讯。

@someonetwo 基本上很大一部分操作抄袭网页的逻辑甚至界面。
@ivechan 现在想着能快速做一个东西出来,至少用起来,但是确实觉得 ele 很炫。

@alang 感谢提醒 ele+vue

@duan602728596 这个具体怎么配置? nwjs 不是已经背 ele 取代了吗
@dcalsky 目前自己用,大小倒不是问题。高密度的计算打算用 julia 解决。
再次感谢大家热情回复。
JosephusZhou
2017-12-12 23:08:51 +08:00
@Lpl 不会谷歌,英文社区一堆,github issues
jahan
2017-12-12 23:12:54 +08:00
另外请教一下大家有没有财务管理类的 electron 开源代码可以学习的? git 上有个俄国人写的,觉得不是特别清晰。
duan602728596
2017-12-12 23:27:48 +08:00
@jahan 取代到不至于,只不过各有优缺点罢了。配置就是 webpack+react 全家桶的单页配置,路由就是 HashRouter 的形式,去掉 webpack 的热更新,其他的和前端开发差不多。
jahan
2017-12-12 23:31:00 +08:00
@duan602728596 看起来这个配置就较为复杂。如果有清晰的文档还好。不知道 helloworld 环境要搞多久?
lengyihan
2017-12-13 00:32:38 +08:00
不好,qt 吧
param
2017-12-13 00:37:36 +08:00
现在没人谈 Qt 了吗?
coolcfan
2017-12-13 01:24:11 +08:00
对于开发者当然是好选择……
作为用户,我很不喜欢用 electron 做的桌面程序……
inflationaaron
2017-12-13 01:29:04 +08:00
electron 最大的问题还是资源占用,每多开一个 electron app 就相当于多开了一个浏览器。话说现在有没有 C/S 结构的 electron 呢

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/414194

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX