确定 Windows 应用开发选项

已完成

在软件咨询公司的场景中,你必须为每个即将到来的项目选择最佳的应用程序框架。 你有多个用于构建 Windows 应用程序的选项。 每个选项都有自己的优势和好处。 本单元介绍用于构建 Windows 应用程序的选项,并讨论如何为应用程序选择最佳选项。

Windows 为原生应用程序的创建提供了令人兴奋和多样化的选择。 Microsoft 提供的每种 UI 框架都有自己的优势和特点。 你可能熟悉 Windows Presentation Foundation (WPF) 和 Windows 窗体,它们是用于构建强大的桌面应用程序的流行 .NET 框架。 但是,你可能不知道 Windows 开发中的最新创新:WinUI 和 Windows 应用 SDK,使你能够创建漂亮的、具有高性能和丰富功能的原生 Windows 应用。

A picture visualizing Windows UI framework options for developers.

WPF 应用程序

WPF 是一个基于 Extensible Application Markup Language (XAML) 的 UI 框架,旨在利用新式图形硬件。 WPF 提供了一组全面的功能:控件、数据绑定、布局、图形和动画、样式、模板、文档、媒体和版面设计。 WPF 属于 .NET,因此可以生成整合 .NET API 其他元素的应用程序。 虽然 .NET 是跨平台的,但 WPF 仅在 Windows 上可用。

WPF 是一个经过时间证明的框架,用于构建企业应用程序。 它是一个成熟的框架,具有广泛的第三方库和控件生态系统。 若要构建需要高度自定义、功能丰富和且具有原生 Windows 应用程序的优越性能的桌面应用程序,则 WPF 是绝佳选择。

用户通过窗口与 WPF 应用程序进行交互,其窗口系统是先进的。 WPF 窗口可以是模式窗口或非模式窗口,并且可以托管在其他应用程序中。 WPF 还支持多个窗口。 虽然 WPF 目前不是原本就支持 Fluent 设计,但你可以使用第三方库将各种设计选项纳入到 WPF 应用程序中。 WPF 应用可以通过 Microsoft Store 进行分发、通过独立包进行安装,或者通过企业软件管理系统进行部署。

A picture visualizing WPF application development.

Windows 窗体应用程序

Windows 窗体是一个 UI 框架,用于面向 Windows 创建丰富的桌面客户端应用。 Windows 窗体开发平台支持一组广泛的应用开发功能:控件、图形、数据绑定和用户输入。 Windows 窗体利用 Visual Studio 中的拖放式视觉对象设计器,可快速轻松地创建 Windows 窗体应用。

Windows 窗体是 .NET 的一部分,因此你可以构建包含 .NET API 的其他元素的应用程序。 虽然 .NET 是跨平台的,但 Windows 窗体框架(例如 WPF)仅在 Windows 上可用。 如果要构建的桌面应用程序需要高度自定义、功能丰富和且具有基于新式 .NET 堆栈的原生 Windows 应用程序的优越性能,则 Windows 窗体是绝佳选择。

Windows 窗体是适用于系统实用工具应用或业务线应用程序的流行框架。 Windows 窗体是一个成熟的框架,拥有庞大的第三方库和控件生态系统。 与基于 XAML 的 UI 框架不同,Windows 窗体不适合需要动画或丰富图形的应用。 与 WPF 应用一样,Windows 窗体应用程序可以通过 Microsoft Store 进行分发、通过独立包进行安装,或者通过企业软件管理系统进行部署。

A picture visualizing Windows Forms application development.

采用 Windows 应用 SDK 的 WinUI 应用程序

WinUI 3 是 Windows 应用 SDK 附带的原生 UI 平台组件。 它的前身是通用 Windows 平台 (UWP),与前身不同,Windows 应用 SDK API 与 Windows 软件开发工具包 (SDK) 分离。 Windows 应用 SDK 提供了一组用于面向 Windows 创建桌面应用的 API 和工具。 Windows 应用 SDK 可用于在 Windows 11 和低至 Windows 10 版本 1809 的系统上创建应用程序。

WinUI 应用纳入了 Fluent 设计,提供 Windows 应用的标准外观。 WinUI 3 应用可以采用 C# 或 C++ 编写。 XAML UI 框架对于有 WPF 开发经验的 Windows 开发人员来说非常熟悉。 如果当前的功能集满足你的需求,并且框架中持续进行的开发工作定期提供新功能,则它是一个绝佳的选择。 WinUI 目前被定位为想要构建一流 Windows 应用程序的独立软件供应商 (ISV) 的首选框架。

Fluent 设计原则不仅仅是一组样式和主题。 它们还包括与应用程序交互时的辅助功能和整体用户体验。 WinUI 体现了这一切。 WPF 可能能够匹配样式,但如果要求用户体验达到最高水平,则可能无法完全满足这一要求。

WinUI 应用程序可以通过 Microsoft Store 进行分发、通过独立包进行安装,或者通过企业软件管理系统进行部署。

A picture visualizing WinUI application development.