请教 Windows 桌面开发选择

2023-12-15 12:00:02 +08:00
 JustinL
先说一下背景:建筑行业公司,内部工程师用,因此只需要 Windows 即可,同时公司所有电脑已经是 Win11 ,不用兼容 xp 那种包袱,可以考虑上最新的技术。内部使用铺开后如果反馈不错,有可能对外销售。

做了一些 study ,感觉主要是这几种:
1. Delphi/Lazarus 。在前公司用过,确实很方便,但是 Delphi 需要授权,Lazarus 社区也比较小,领导不喜欢,pass
2. C#+WPF 。主要担心被反编译问题,但是貌似很多软件也是 C#,请问是否多虑?搜了一下没有太好的解决方案。
3. C++ qt 。主要担心上手难度问题,团队没写过 C++,不过兴趣很大,就是怕交付时间不能保证。
4. C#写界面,C++写核心算法。不知道里面有没有什么调用的坑?

限定在 Windows 就行了,不需要讨论跨平台。

陷入选择困难症了……请有经验的大佬们指点一二~
17149 次点击
所在节点    Windows
134 条回复
jgh004
2023-12-15 16:33:30 +08:00
@JustinL
想要快,c# winform , 商业的可以用 devexpress 控件,界面中规中矩。
想要界面好看,用 Avaloinia ,相当于 wpf.
防反用基于虚拟机的混淆工具。
zggsong
2023-12-15 16:40:21 +08:00
WPF
buaacss
2023-12-15 16:50:45 +08:00
WPF 是最好用的。不过如果你真想看看其它的 UI 框架的话,我推荐 gaclib https://gaclib.net/contact.html

照着 demo 糊一个简单的应用非常容易。
没有授权问题,除非你要改 gaclib 本身的代码。
纯 C++,反编译困难。
遇到问题可以直接加群问。
joyhub2140
2023-12-15 17:01:00 +08:00
@liyafe1997

QT 中国法务部不是这样子想的
joyhub2140
2023-12-15 17:06:52 +08:00
flutter 吧,不做涉及到 OS 底层冷门 API 的 desktop 应用,这个绝对可以满足。
yuyue001
2023-12-15 17:26:29 +08:00
可以试试 wails ,逻辑用 go 写,UI 用网页。

安装包小,而且性能好。

https://wails.io/zh-Hans/
NPC666
2023-12-15 17:34:37 +08:00
可以试试 Rust+Tauri ?
aLazarus
2023-12-15 17:50:12 +08:00
webview2 ?
qaz168000
2023-12-15 17:51:42 +08:00
靠谱的选择只能是 2 和 3 了,hold 住就用 3 ,一般情况直接选 2...
asm
2023-12-15 17:54:44 +08:00
不懂开发,但是谈到反编译 c#,确实不堪,跟 java 一样,拖进去就是源码,除了混淆,好像也没啥好的方案。
asm
2023-12-15 17:57:56 +08:00
@asm 但是 c++,其实也一样,不过门槛高点,对于我们来说,不加 vm 的 cxx ,也如同源码。当然 vm 的,也看看加的点对不对。所以,前期没有自己核心的算法或者牛逼的竞争力的东西,反不反编译没啥区别,再着最好的方法就是注册专利,现在流行这个,都不 vm 了。注册专利,告一个准一个。
2zhimazhima2
2023-12-15 18:51:29 +08:00
可以用 WPF+CLR+c++
jsq2627
2023-12-15 18:56:57 +08:00
核心逻辑放服务端。客户端无论是 native 还是 web 随意,反正都能被逆向。
tutudou
2023-12-15 19:37:42 +08:00
直接 c#吧,其实界面也是很麻烦的,如果语言界面生态不完整的话,会非常的难受。
lizhenjia569
2023-12-15 19:51:23 +08:00
pyside6 走起 出活快 LGPL 协议
mmdsun
2023-12-15 19:55:48 +08:00
在这里选,微软官方推荐的技术栈:
https://learn.microsoft.com/zh-cn/windows/apps/get-started
levelworm
2023-12-15 20:54:41 +08:00
@JustinL 这个做法是正确的。只要能凑乎交货,那是技能学得越多越好。
akira
2023-12-16 00:33:02 +08:00
建筑行业? 涉及到 CAD 之类的么。。
u823tg
2023-12-16 00:33:12 +08:00
Avalonia aot 就行
sofukwird
2023-12-16 00:44:17 +08:00
我建议你选 golang ,java 和 c#这种可以以 jar 形式发布包的很快你就会碰到收费库,而且无法自己修改审查

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

https://tanronggui.xyz/t/1000641

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

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

© 2021 V2EX