做一个 win 平台下桌面应用,大家说说是用 QT 还是 vs C++?

2016-06-18 20:36:09 +08:00
 hunk

都是从零开始学,有些略偏向 vs c++.

本打算用 delphi ,谁知 XE 装在 HyperV 上的 win7 中会导致虚拟机暂停,不知何故。

想做一小工具,将图片拖上去后,根据预设对图片调整大小和尺寸的处理,比较简单。

33539 次点击
所在节点    程序员
83 条回复
BSD
2016-06-19 13:09:28 +08:00
这么个小玩意, VB 最简单。
BGLL
2016-06-19 13:44:57 +08:00
既然都 C++ 了, Qt 是不二之选。想用界面描述语言用 QML ,想简简单单拖控件也可以拖控件。想用 VS ,也可以在 VS 里写。
hp3325
2016-06-19 14:37:05 +08:00
要照顾 XP ,除了 Delphi XE 没有其他更好的选择。

各种库都是现成,部署不需要任何附加包,一个可执行文件覆盖 XP 到 WIN10 全平台,除了可执行文件大了点。
hunk
2016-06-19 14:57:31 +08:00
想起个功能,似乎还真是非 C++不能完成。

复印件中有身份证,都是以 A4 大小存储的,需要提取身份证并剪裁,这点能想到的是 opencv 实现。 node 在这方面,似乎还有些欠缺, c++自然是轻松应对。 delphi 应该也可以,只是网上能找到的资源不多。
theoractice
2016-06-19 18:14:17 +08:00
@hunk opencv 自带 python java 的绑定, c#的 emgucv 也非常好用。然而考虑到效率,确实是会 C++就应该用 C++做的。
@hp3325 当然有更好的选择比如 aardio 。界面可以用 html 做,好看多了。
charlie21
2016-06-19 18:27:28 +08:00
@yxzblue @magicdawn @misaka19000 @ChiChou @SCaffrey
electron 写完打包出来多大?
junweiyang
2016-06-19 18:32:08 +08:00
c# wpf
magicdawn
2016-06-19 19:46:18 +08:00
@charlie21 挺大...
magicdawn
2016-06-19 19:46:55 +08:00
钉叮是用 nw.js 写的, 跟 electron 类似, 可以参考下
chocotan
2016-06-19 20:37:38 +08:00
@FrankHB java 桌面还有 javafx ,不过没什么人用的样子; eclipse 是 swt 吧
“效果还是性能或者是实现质量普遍惨不忍睹”,这个就不太认同了, jetbrains 家的 ide 也是 java 开发的,界面、性能也还不错吧;还见过某贵金属交易客户端是用 swing 做的(某个亲戚在用,观摩了下界面还可以);我以前实习的一家日本公司也是开发 swing 深度定制的 erp 软件。
apache 家的 jmeter 知道的同学也不少吧
teamdev 封装了个 chromium ,叫 jxbrowser ,可以用 html 来开发 java 桌面程序了
chengzi
2016-06-19 22:29:09 +08:00
wpf 部署复杂是因为.net 框架没有在 xp 上内置吗?其实现在一般用户使用 xp 的已经挺少了,网吧基本都 win7 了。现在的 xp 应该大部分都在企业内部的无法升级的哪些机子上吧,面向企业的装个.net 框架应该不是问题了。
然后就是更新的问题,嫌麻烦,直接 clickOnce 就解决了。
然后还有什么导致部署麻烦的?
lsnl8480
2016-06-19 22:56:45 +08:00
随便选一个,先做出来再讲
FrankHB
2016-06-20 04:16:08 +08:00
@chocotan JavaFX 既做桌面又做 RIA ,看上去类似于 WPF 和 Silverlight 的混合,除去前途和用户数量问题,定位也感觉比较糊,所以就没提。
“效果还是性能或者是实现质量普遍惨不忍睹”这方面严格来说不是全部都一样。例如 Swing 的默认 look & feel 一直跟 Windows 上常见的其它 app 很不搭,我也几乎没有见到过有在 Swing 基础上定制的产品; AWT 和 SWT 因为和原生 UI 有一腿所以实现比较脏。相比之下, SWT 还是比较能用的,但是写起来遇到一些不那么 eclipse 的需求嘛……
要用 Java 开发出性能外观都过得去的东西也不算太难,但想要底层实现干净点(看得清楚而且容易改),那种东西还不存在。虽然后者一定程度上和语言无关(至少涉及 Win32 native GUI 的部分都不会好到哪去),但 Java 和 native code 的互操作加剧了这种混乱;相比之下.NET 做这个就容易多了。
JetBrains 家的东西……不想说脏话,事实是我在 Windows 机器上体验过跟他们家有一腿的产品( Android Studio 、 IntelliJ IDEA ……)无一不是卡到几乎没法日用,如果不算打不开的话( CLion )。也就 ReSharper 能动得起来,但还是卡。虽然这也许是我只试用早期测试版本的原因(顺便,这些机器上都没 SSD ),但同样的机器 eclipse 也没那么夸张……更大的问题(和 Chrome 类似)是狂吃内存,开发机内存多少不是我说了算那就只能嗝屁了。不过这些性能问题应该不是 UI 的锅,卡顿是整体性的,和 UI 看上去关系不大。
FrankHB
2016-06-20 04:27:19 +08:00
@chengzi ClickOnce ……作为曾经在 GitHub Windows 客户端安装对话框上手动点过上百回确认然后十有八九被超时 /墙掉的冤大头,对这种中间挂了就强迫从头开始的流氓部署思维,我也真没有力气说脏话了……或者说能看到 Log 里的异常就该谢天谢地了?
(至于为啥会傻点上百回呢——因为有好几次在好几个没法科学上网的环境里又没别的事情可做……)
chengzi
2016-06-20 09:18:09 +08:00
@FrankHB 这个 qiang 的问题,怎么能怪到 ClickOnce 头上。自己写一个更新程序,下着下着网络断了,谁也没办法啊。按理来说能支持断点续传可以稍微避免这个问题,但这个东西也是好久没更新了
FrankHB
2016-06-20 09:26:36 +08:00
@chengzi 非正常环境非正常需求挂了我也能理解,但不管三七二十一只能一气呵成,自动把中间过程不留痕迹地干掉而不留下可能让用户干预改变默认操作的接口,那么……至少可以说是功能太弱。讲道理,断点续传这种二十年前就逐渐普及的东西在今天不支持显然不该是技术原因;而这导致实际体验远远不如传统的离线安装。看来得怪我在墙内咯……
araraloren
2016-06-20 09:30:35 +08:00
~~我的意见是,小工具基本用不着 GUI ,而且写这种东西脚本语言更适合
ibugeek
2016-06-20 10:53:12 +08:00
vs+qt ,了解一下马上就可以上手开发了,反正你界面的需求也不大。
rubygba
2016-06-20 11:17:57 +08:00
都什么年代了,还有人用 C++做桌面应用(手动滑稽
yanzidao
2016-06-20 12:15:43 +08:00
@rubygba 那推荐用啥?

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

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

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

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

© 2021 V2EX