问下现在跨平台界面开发大家都用啥方案啊

2018-01-19 17:51:34 +08:00
 yejinmo

公司要把原项目是 C# WinForm 的移植到 Linux 桌面端 不知用什么技术比较好

要求

目前所知

Electron 及各种 CEF 框架的

QT 及 Java

GTK# 及 Mono

3101 次点击
所在节点    问与答
26 条回复
Humorce
2018-01-19 17:56:13 +08:00
mono 可以看 keepass
FindHao
2018-01-19 17:57:55 +08:00
qt 无疑,开发效率和性能都相对较佳。选择其他的你们公司技术栈就支持吗?
chroming
2018-01-19 17:58:50 +08:00
pyqt 还算比较简单
qsnow6
2018-01-19 17:59:35 +08:00
c#不是可以用 core
yejinmo
2018-01-19 18:04:45 +08:00
@Humorce #1
好的。

@FindHao #2
毕竟是个全新的方向 只是想成本最低效率最高 也就是说。。少招人

@chroming #3
底层还是 QT 那套然后用 py 封装的么。。

@qsnow6 #4
部分后端逻辑已经用 .Net Core 重写了 但是界面这很愁啊 既要考虑美观又要考虑性能
dremy
2018-01-19 18:07:23 +08:00
啥,你在质疑 WebGL 的性能吗?
coderluan
2018-01-19 18:10:48 +08:00
也是做图形图像的,一般是用 pyqt 写的 GUI 来调用 C/C++写的 CLI,兼顾性能和开发效率。
yejinmo
2018-01-19 18:11:17 +08:00
@dremy #6
没错 就是光明正大的质疑 web 的性能。。。
yejinmo
2018-01-19 18:12:03 +08:00
@coderluan #7
pyqt 写出来的界面 美观性如何 开发效率怎么样。。
nicevar
2018-01-19 18:18:09 +08:00
对性能有要求就别考虑 electron 了
Java 现在 Swing 有点老了,用的最好的也就是 JetBrain 系列了,不过内存吃得厉害,JavaFX 现在用的人少了,踩坑的人也少,遇到问题不好解决
.Net Core 还不太程序,没见什么软件用
因此选择 Qt 是没错的,毕竟市面上用 Qt 开发的软件多如牛毛
feverzsj
2018-01-19 18:23:03 +08:00
不是有 wine 嘛
huclengyue
2018-01-19 18:23:24 +08:00
@yejinmo 美观性还算可以,用 qt 的项目很多,你可以看看。
coderluan
2018-01-19 18:23:56 +08:00
@yejinmo 开发效率很高,支持 QtDesigner,一个下午就能基本上手,GUI 默认就是白框,想美观你得自己写 css。
htfy96
2018-01-19 18:47:27 +08:00
CEF 最近 render to GL surface 的 patch 已经被合并了,效率还是比较有保障的,至少流畅播放 1080p 视频是可以的
nicevar
2018-01-19 18:47:42 +08:00
@coderluan 最好做过大点的项目再推荐,PyQt 开发的软件大多都是小工具和个人软件类的,基本上没见到大型软件使用,不如全部用 Qt,运行效率还高,还有楼主是公司用的,PyQt 是 GPL 的,写的软件要开源,要不然律师函过来了就尴尬了,而 Qt 可以选择 LGPL
coderluan
2018-01-19 20:08:19 +08:00
@nicevar 公司项目也都是直接 QT (所以说我没做过大项目我是否认的),PyQt 我自己学着玩的,感觉方便就推荐了,GPL 这个确实没注意到,感谢提醒。
yejinmo
2018-01-19 20:15:04 +08:00
@nicevar #10
Java 是最不想考虑的 Core 的话目前暂时也只能写写后端了

@feverzsj #11
用 wine 的话。。有点不规矩啊

@nicevar #15
@coderluan #16
讨论了下 推 QT 的可能性大些 就是全部用 QT 重写这个开发进度有点难受
nicevar
2018-01-19 20:24:56 +08:00
@yejinmo 如果追求开发效率,Qt 可以考虑 qml,配合 js 开发的,也能跟 c++对接开发封装一些控件,我在 12 年到 15 年做项目用的比较多,最近两年没怎么用了,最近情况不太了解,估计应该稳定多了
7654
2018-01-19 20:30:02 +08:00
C#写 GUI 软件已经转移到树莓派上运行了,目前内存控制的不太好
ashong
2018-01-19 20:36:03 +08:00
桌面 App 都改用 html 做界面( cef 做渲染) 后台 c++ 实现 web server, 通信用 websocket,数据用 post,get

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

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

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

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

© 2021 V2EX