2020 年写跨平台桌面客户端用什么?

2020-09-02 09:16:12 +08:00
 ericgui
我最近考虑写一个跨平台的桌面客户端,不是游戏,就是办公类的产品。

第一个出现在脑海中的选择似乎是 electron
然后搜到有 react native for windows/macOS

当然,也有 Qt,但我显然不懂 C++或者 Python

C#写 WPF, 当然非常 OK,但不跨平台,而且我还要重新学 C# ?

所以,各位有什么看法么
9760 次点击
所在节点    程序员
42 条回复
BingoXuan
2020-09-02 10:41:04 +08:00
@96412hj
go 有个库就叫 webview,你搜一下就知道了。但我觉得这个做小工具还行,大项目还是不要了,api 极其简陋。因为不同操作系统下对 webview 有各种限制。在 macOS 下连复制粘贴都不行,alert 更是不行。更没有 electron 那样不同进程相互调用,我自己手写 websocket 的 rpc 。v 友写过一个 deskgap,但已经停止开发了。我也考虑给 deskgap+1s,无奈不会 Windows 下的编程。

@zjsxwc
imgui 在高分辨率下很容易糊,非常蛋疼。不过真的非常小。

@shanghai1998
100m 肯定是 electron,不是 webview 套壳,而是把整个浏览器扔进去了。
ruyuejun
2020-09-02 10:43:15 +08:00
毫无疑问现在是 Electron
lux182
2020-09-02 10:53:22 +08:00
electron 感觉让人又爱又恨
Jirajine
2020-09-02 11:05:48 +08:00
tauri
Ritr
2020-09-02 11:57:19 +08:00
如果不是必须的话 web 版的其实就足够了,electron 也无非就是套壳开发
icyalala
2020-09-02 11:59:49 +08:00
如果是 Java 技术栈的,尤其是做 Android 的,JavaFX 几乎没有学习曲线,
而且不至于过几个月连 build 都失败(狗头)。
wh1012023498
2020-09-02 13:57:43 +08:00
qt,electon,nw.js
hwdef
2020-09-02 14:06:48 +08:00
electron 性能想优化的好太难了,,,只有 vscode 算是性能好的,,其他 electron 写出来的都太差了。。。

c#现在也可以跨平台,,xamarin

或许跨平台就是个错误的选择呢?厂商的意义就是创造壁垒,,为难跨平台的应用。
tairan2006
2020-09-02 14:11:16 +08:00
跨平台是个坑…目前最大的指望是 flutter,但是现在还不能用
gongym
2020-09-02 14:14:04 +08:00
govcl,跨平台,轻量级,拖拽 UI 布局,案例丰富,golang 开发。简直完美
luosong
2020-09-02 14:29:39 +08:00
以前用 QT,写过 js 之后再也不想碰 C++
element90
2020-09-02 16:20:16 +08:00
难道不是 flutter 吗?
我是 Java 后端开发,但最近辞职没找到工作,所以在家学习了 Flutter,真心推荐下,真的挺好用,flutter 的语言使用 Dart,Dart 有点像混合了 js 和 java,不像 scala 那样复杂,很好上手。
而且我本人也没有太多的移动端开发经验,做过全栈(web),可以轻松地构建自己的应用,虽然目前只是 android 和 iOS,但 flutter 支持到桌面级的开发,非常方便移植。
另外毛遂自荐一下自己的应用,已经开源,github 地址:https://github.com/forfuns/sudoku-flutter
希望可以帮到你
qq7790586
2020-09-02 18:07:08 +08:00
electon 真的是又爱又恨。vscode,迅雷。钉钉貌似也是 electon
HaiYu
2020-09-02 18:13:45 +08:00
可以关注一下 tauri 对标的是 electon,虽然功能还不全但感觉有前途
creanme
2020-09-02 22:48:26 +08:00
react-native (手动狗头
不过 react-native 确实可以开发 windows 和 macos 的程序,轮子哥似乎在做这方面的工作。
zhanlanhuizhang
2020-09-03 09:38:27 +08:00
.NET Core,应该是跨平台的吧
PopRain
2020-09-03 11:00:57 +08:00
.net Winform 和 wpf 应该很快可以跨平台了, 强烈不建议 QT , 就算在 windows 下运行,也不是调用 windows 的 API, 是自己做的一套窗口系统,不喜欢。(当然也可能我对 QT 了解不多,没有 c++功底的人就不要考虑 QT 了)
myCupOfTea
2020-09-03 12:16:16 +08:00
@qq7790586 钉钉是 nw.js
myCupOfTea
2020-09-03 12:16:37 +08:00
不兼容 xp electron,兼容 xp nw.js
ArrayBuffer
2020-09-03 16:21:08 +08:00
如果有时间折腾可以试试 flutter, 想快速开发还是用更成熟的 electron, 就这么简单

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

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

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

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

© 2021 V2EX