.NET MAUI 6 正式 GA:一个代码库,多个平台

业界 作者:SegmentFault 2022-05-31 15:41:54

技术编辑:61丨发自 思否编辑部

公众号:SegmentFault




近日,微软官宣 .NET MAUI 已正式 GA。


“一个代码库,多个平台。现在,超过 500 万 .NET 开发人员拥有面向 Android、iOS、macOS 和 Windows 的一流跨平台 UI 堆栈,以补充 .NET 工具链 (SDK) 和基类库 (BCL)。你可以使用 .NET 构建任何东西。”


微软称,这只是创建令 .NET 开发人员满意的桌面和移动应用程序体验之旅的开始,为打造更广泛的 .NET 生态系统奠定了基础,并将 .NET Framework 和旧项目系统中的插件、库和服务引入 .NET 6 和 SDK 样式项目中。


其中包括:




下面具体看一下 .NET MAUI 有哪些亮点。

 

开箱即用的原生 UI


针对不同平台(Android、iOS、macOS 和 Windows),.NET MAUI 分别提供了专门设计且开箱即用的最佳应用体验。例如,Windows 上的 .NET MAUI 由 WinUI 3 提供支持,WinUI 3 是 Windows 应用 SDK 附带的原生 UI 组件。


使用 C# 和 XAML 从包含 40 多个控件、布局和页面的丰富工具包生成应用。在移动控件的 Xamarin 肩膀上,.NET MAUI 增加了对多窗口桌面应用程序、菜单栏和新的动画功能、边框、角、阴影、图形等的支持。



可访问性优先


使用原生 UI 的一个主要优点是继承的可访问性支持,我们可以利用语义服务构建这些支持,以便更轻松地创建高度可访问的应用程序。.NET MAUI 语义服务用于控制:


  • 描述、提示和标题级别等属性
  • 重点
  • 屏幕阅读器
  • 自动化属性
 

超越用户界面


.NET MAUI 提供了简单的 API 来访问每个平台的服务和功能,例如加速计、应用操作、文件系统、通知等。在下面的示例中,通过配置 “app actions” ,即可为每个平台上的应用程序图标添加菜单选项:


轻松定制


无论是扩展 .NET MAUI 控件的功能,还是建立新的平台功能,.NET MAUI 都是针对可扩展性而设计的。以控件为例,这是在一个平台上以不同方式呈现不同效果的控件的典型例子。Android 会在文本字段下方画一条下划线,开发者通常希望删除该下划线。使用 .NET MAUI,只需几行代码即可自定义整个项目中的一切。

 

现代化的开发生产力


.NET MAUI 使用 .NET 6 引入的 C# 10 功能,包括全局使用语句和文件范围命名空间,非常有助于减少文件中的混乱。.NET MAUI 以 “单一项目” 为重点,将多平台目标提升到了一个新的水平。


在新的 .NET MAUI 项目中,平台被放置在一个子文件夹中,开发者可将重点放在花费大部分精力的应用程序上。在项目的 Resources 文件夹中,开发者可以在一个地方管理应用程序的字体、图像、应用程序图标、启动画面、原始资源和样式。.NET MAUI 将针对每个平台的独特要求进行优化。


将 Blazor 引入桌面和移动设备


 .NET MAUI 集成了 Blazor,因此开发者可以直接在原生移动和桌面应用程序中重用现有的 Blazor Web UI 组件。借助 .NET MAUI 和 Blazor,开发者可以重用 Web 开发技能来构建跨平台的原生客户端应用程序,并构建 UI 一致的跨移动、桌面和 Web 的应用。

 

性能优化


.NET MAUI 专为提高性能而设计。.NET MAUI 中的 UI 控件在原生平台控件上实现了一种精简的处理程序映射器模式。这减少了 UI 渲染中的层数,并简化了控件定制。.NET MAUI 中的布局已设计为使用一致的管理器模式,该模式可优化度量值并排列循环,以便更快地呈现和更新 UI。

默认情况下,这些设置是启用的,以便为发布版本提供这些优化。


更多详情查看:https://devblogs.microsoft.com/dotnet/introducing-dotnet-maui-one-codebase-many-platforms/

- END -

关注公众号:拾黑(shiheibook)了解更多

赞助链接:

关注数据与安全,洞悉企业级服务市场:https://www.ijiandao.com/
四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/

公众号 关注网络尖刀微信公众号
随时掌握互联网精彩
赞助链接