.NET MAUI开源架构_2.什么是 .NET MAUI?

1.什么是.NET MAUI?

**.NET 多平台应用 UI (.NET MAUI)**是一个跨平台框架,用于使用 C# 和 XAML 创建本机移动和桌面应用。使用 .NET MAUI,可从单个共享代码库开发可在 Android、iOS、macOS 和 Windows 上运行的应用。

.NET MAUI 是一款开放源代码应用,是 Xamarin.Forms 的进化版,从移动场景扩展到了桌面场景,并从头重新生成了 UI 控件,以提高性能和可扩展性。 如果以前使用过 Xamarin.Forms 来生成跨平台用户界面,那么你会注意到它与 .NET MAUI 有许多相似之处。 但也有一些差异。 通过使用 .NET MAUI,可使用单个项目创建多平台应用,但如果有必要,可以添加特定于平台的源代码和资源。 .NET MAUI 的主要目的之一是使你能够在单个代码库中实现尽可能多的应用逻辑和 UI 布局。

2..NET MAUI 适合哪些用户?

.NET MAUI 适用于需要开展以下工作的开发人员:

  • 使用 XAML 和 C# 从 Visual Studio 中的单个共享代码库编写跨平台应用。
  • 跨平台共享 UI 布局和设计。
  • 跨平台共享代码、测试和业务逻辑。

3..NET MAUI 应用的体系结构

.NET MAUI 将 Android、iOS、macOS 和 Windows API 统一到单个 API 中,提供"编写一次就能在任何地方运行"的开发人员体验,同时还提供了对每个原生平台各个方面的深入访问。.NET MAUI 提供了用于为移动和桌面应用生成 UI 的单一框架。 下图展示了 .NET MAUI 应用的体系结构的概览视图:

4.NET MAUI 如何运作

在 .NET MAUI 应用中,你编写主要与 .NET MAUI 控件和 API 层 (1) 交互的代码。 然后,此层直接使用原生平台 API (3)。 此外,如果需要,应用代码可以直接执行平台 API (2)。

.NET MAUI 应用可以在电脑或 Mac 上编写,并编译成本机应用包:

  • 通过 .NET MAUI 生成的 Android 应用从 C# 编译为中间语言 (IL),然后在应用启动时实时 (JIT) 编译为本机程序集。
  • 通过 .NET MAUI 生成的 iOS 应用完全是预先 (AOT) 编译的,从 C# 编译为本机 ARM 程序集代码。
  • 使用 .NET MAUI 生成的 macOS 应用使用 Mac Catalyst,这是 Apple 提供的一种解决方案,可将使用 UIKit 生成的 iOS 应用扩展到桌面,并根据需要使用其他 AppKit 和平台 API 对其进行扩充。
  • 使用 .NET MAUI 生成的 Windows 应用使用 Windows UI 3 (WinUI 3) 库创建面向 Windows 桌面的本机应用。 有关 WinUI 3 的详细信息,请参阅 Windows UI 库
相关推荐
大空大地20261 小时前
C#高级语法总结
开发语言·c#
周杰伦fans8 小时前
C# AutoCAD 二次开发极简入门:从环境搭建到高效实战
开发语言·c#
学以智用9 小时前
.NET Core 仓储模式(Repository Pattern)完整教程
后端·.net
.NET修仙日记9 小时前
.NET EFCore批量插入性能优化实战:30秒 → 0.5秒
性能优化·c#·.net·.netcore·微软技术·efcore·踩坑实录
Esofar10 小时前
Dddify:给 ASP.NET Core 项目一套轻量、清晰、可落地的 DDD 基础设施
c#·ddd·asp.net core·cqrs·dddify·clean architecture
步步为营DotNet10 小时前
深挖.NET 11:.NET Aspire 在云原生应用状态管理的创新与实践
云原生·.net·wpf
Coder_Shenshen11 小时前
【基于LibUA库的OPC UA服务器与客户端Demo——协议解析与Bug修复实践】
网络·c#·bug
信必诺12 小时前
C# —— VS2022配置终端程序跨平台发布方法(部署Ubuntu22.04举例,详细多图)
ubuntu·c#·跨平台部署
我是唐青枫12 小时前
C#.NET YARP 跨域配置详解:网关统一处理 CORS
开发语言·c#·.net
lzhdim12 小时前
C#性能优化技巧
开发语言·性能优化·c#