桌面端开发技术选择指南:Electron、WPF、Qt(C++)等方案对比

2024-07-13
来源:网络整理

前言

先结论

桌面开发推荐以下技术组合

现在很多新的应用都是用它开发的,如果对性能要求较高的话,可以用node-ffi来调用。

不建议使用+QT(或者其他框架)做客户端,用了一段时间就放弃了,包体积大,性能不高,关键是相关文档少,遇到问题很难找到解决办法。

如果应用程序对性能要求不高,建议使用这个,如果应用程序对性能要求高,则使用WPF或者Qt(C++)。

GUI解决方案

有许多 GUI 解决方案:

目前常用的解决方案

每种方案都有优缺点,可以根据团队情况选择,都是比较好的方案,其他方案,比如Java等,不推荐。

C++ Camp 和 QT 以及区别

是一个底层界面库,利用skia自绘制完成控件的展示,目前已经开源,类似的控件库还有soui

Qt不单单只是一个界面库,它还包括数据库,web,com通信,通讯等功能,应该称得上是一个开发框架,包含了强大的UI系统。

虽然Qt是开源的,但是商业使用需要购买许可证,但这并不是必需的。

从稳定性上来说,Qt无疑是最成熟、稳定的界面开发库,但是程序运行依赖库较大,需要30~40M的Qt基础库。

界面实现效果上,二者没有太大区别,都可以实现比较丰富的界面外观,但文档和资源较少,对开发人员的要求也比较高。

另外如果涉及到跨平台开发的话它就没法做了,只能支持界面开发。

Qt自带的控件风格比较简单,可以使用qss来美化控件,但是效果比较简单,这里可以尝试使用qt-ui界面库来扩展风格,实现更加丰富的界面效果。

Qt-UI是Qt控件的扩展,支持所有原生Qt控件的界面和文档,可以帮助Qt界面开发人员实现高质量的软件界面。

QT 简介

常见应用

使用Qt开发桌面应用程序有以下优点:

微软自己的(/WPF/UWP/)

微软的技术比较混乱,一种技术出来,另一种技术就被颠覆,导致每种技术都不是特别成熟。

请注意,在上图中

请根据需要安装

和 WPF

WPF,即 ,属于.net.0,是微软为了替代.net而推出的产品,可以分离界面设计人员和开发人员的工作,提供多媒体交互的用户图形界面,核心的三个组件集为、K、和。

和WPF最大的区别在于,WPF底层采用了GDI+,因此WPF拥有更优秀的图形界面。

开发框架的作用_求推荐一个小程序开发框架_主流框架开发

WPF 和 UWP

(UWP)和(WPF)是有区别的,虽然都可以用于界面和桌面开发,但是UWP是一个新的UI框架,而且UWP支持的平台很多,至少比WPF多。

UWP 要求系统

那么 UWP 可以用什么来编写呢?

那么为什么网上那么多朋友说UWP的性能比WPF好呢?

由于 UWP 使用渲染,而 WPF 使用

虽然WPF渲染是通过Dx9完成的,但是最终的显示需要(DWM)。

开发工具中无法默认创建,需要安装插件,不推荐。

如何选择

在WPF和CSS之间,肯定选择WPF,它更灵活。

WPF 还是 UWP 如何选择?

WPF是基于多窗口的,而UWP是基于每个窗口多个页面的,这就决定了两者的开发跳转思路不一致。UWP就像移动端开发,页面跳转是基于导航的,所以只要应用有多窗口需求,就不要考虑UWP。

如果应用只考虑支持,所有功能都可以在内部跳转,类似WEB应用或者手机应用的交互,那么UWP是理想的选择,启动快,占用内存小

.NET、.NET Core 和 .NET 5/6

比较的

该技术是跨平台的吗?

。网

仅支持最新版本4.8,不再更新

.NET 核心

是的

以前的跨平台解决方案不再适用于新项目,已被 .NET 5/6 取代

.NET 5/6

是的

.NET 和 .NET Core 的替代方案。当所有依赖项都可用时,建议使用此方法。

2022 年创建 WPF 的两种方法

这两种方法分别对应

.NET Core 不再是一个选择。

分享