最近在做Windows桌面程序开发,最初考虑到团队的技术构成(没有.NET开发),决定用Electron作为解决方案来开发,但是最后因为需要实现应用向其它未处于激活状态的应用发消息的功能无法通过自带的api实现(需要借助node-ffi调用dll解决),所以就对各个方案做对比做最后的决策(其实还是在纠结用C#.net还是Electron,其它的方案并不考虑)。
Windows 下的 GUI 解决方案比较多:
没有哪一种方案能够独霸 Windows,使用比较多的编程语言是 C++、C#、Java。
常见的应用
用 Qt 来开发 Windows 桌面程序有以下优点:
WPF,即windows presentation foundation,windows呈现基础,属于.net framework3.0,是微软推出取代Winform的产品,能做到分离界面设计人员与开发人员的工作,提供多媒体交互用户图形界面,三大核心程序集是presentationcore、presentationFramework、windowsBase。
WPF和Winform最大的区别在于WPF底层使用的DirectX,Winform底层使用的是GDI+,所以WPF的图形界面上更胜一筹
Universal Windows Platform (UWP) 和 Windows Presentation Foundation (WPF) 是不相同的,虽然都可以做界面和桌面开发,但是 UWP 是一个新的 UI 框架,而且 UWP 是支持很多平台,至少比 WPF 多。
那么 UWP 可以使用什么写?
WPF 呢?
他可以使用 xaml 做的前台,C#、VB、F#、C++写的后台。
一句话结论:现阶段还是用.NET Framework 以后.NET Core是趋势
.NET 生态有三个主要的高级别组件 - .NET Framework, .NET Core, 和 Xamarin。
毋庸置疑,当你想通过 C# 来构建移动应用(IOS,Android 和 Windows Mobile),Xamarin 是你唯一的选择。
支持 Windows 和 Web 应用。 可以使用 Windows Forms、WPF、和 UWP 来构建Windows 应用程序 ASP.NET MVC 的 Web 应用。
是最新的开源跨平台框架,用于构建包括 Windows, Mac 和 Linux 操作系统在内的应用程序。 .NET Core 支持 Windows Forms、 WPF、UWP和 ASP.NET Core。 UWP用于构建 Windows10 目标Windows和移动应用程序。 ASP.NET Core用于构建基于浏览器的 Web 应用程序。
这就是 .NET Framework 的现状。当前版本的.NET Framework 4.8 应该是.NET Framework的最新版本。 将来不会再计划新版本的.NET Framework。
IntelliSense
] 和 调试[debugging
],大多数其它第三方的编辑器,如 Sublime, Emacs, 和 VI 同样支持 .NET Core。对C++开发不熟 所以C++的方案就不考虑了
Java并不适合桌面开发,其它的语言没用过也暂不考虑
C#的Winform、WPF要想操作其它程序也需要调用DLL 和 用Electron区别不大,所以还是用Electron来搞了
下一篇再来介绍Electron调用DLL的方式
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有