本文介绍: 随着生成式AI的到来,人工智能领域发生了翻天覆地的变化,从底层语言运行时,到库的处理,到接口,到跨平台应用,对于 人工智能,.NET都有相对成熟的解决方案了。由于新的基于“Jiterpreter”的运行时和新的内置组件,您的 .NET 代码在 WebAssembly 上的运行速度明显更快。.NET 8 以多种方式促进了云原生开发,例如包括许多容器增强功能,但这里的重大新闻是 .NET Aspire 的第一个预览版可用性,这是一个用于构建弹性、可观察和可配置的云原生应用程序的堆栈。以下是每个领域介绍

11 月 15 日开始的为期三天的 .NET Conf 在线活动的开幕日上,.NET 8作为微软开源跨平台开发平台正式发布。.NET 团队着重强调云、性能全栈 Blazor、AI 和 .NET MAUI 是.NET 8的主要亮点。.NET团队在 .NET Conf 2023 [1]活动开幕式上表示:“通过这个版本,.NET 重塑了我们构建按需扩展智能、云原生应用程序和高流量服务方式。 无论你是部署到 Linux 还是 Windows使用容器还是你选择的云应用模型,.NET 8 都能更轻松地构建这些应用。”

数字化转型智能方向上我们可以用.NET 8 做下列这些场景

企业来说特别重要的是,.NET 8 [2]是一个长期支持 (LTS) 版本,这意味着它将获得三年的支持和补丁,而标准期限支持 (STS) 版本则是 18 个月。对于开发人员来说,特别重要的是 .NET团队正在向期待已久的原生提前编译(NativeAOT)迈进 。

2020年的时候.NET团队做过一项调查中发现Survey: Native AOT [results][3],.NET Core 中缺少NativeAOT 阻碍了开发平台的采用,促使 .NET 团队大力推动 AOT。

.NET 8通过推进NativeAOT来增强可持续计算,以减少内存使用并实现即时应用程序启动今天强调了AOT的功能,包括:

描述原生 AOT 大小优化

描述.NET 8的整体情况时,.NET 团队表示:“NET 8提供了数千项性能,稳定性和安全性改进,以及平台工具增强功能,有助于提高开发人员的生产力和创新速度。在公告博客[4]文章中,这数千项改进围绕上述五个主题进行了分组。以下是每个领域的介绍。

性能 .NET团队的 Stephen Toub 每年都会针对.NET性能方进行彻底、煞费苦心和详尽的详细说明,他总结了数千个性能数据点,宣称: .NET 7 速度超快, .NET 8 更快。[5]

.NET 8 引入了新的代码生成器,即动态配置文件引导优化 (PGO),它根据实际使用情况优化代码。此功能最多可将应用性能提高 20%。AVX-512 指令支持对 512 位数向量进行并行运算,在 .NET 8 中受支持和使用,从而允许在更短的时间内进行更多的数据处理。此外,基元类型现在实现了新的格式化和可解析接口,使它们能够直接格式化解析为 UTF-8,而不会产生任何转码开销。这个结果可以看 TechEmpower 22轮Web框架 性能评测:.NET 8 战绩斐然的[6]说明

云原生 .NET 8 以多种方式促进了云原生开发,例如包括许多容器增强功能,但这里的重大新闻是 .NET Aspire 的第一个预览版可用性,这是一个用于构建弹性、可观察和可配置的云原生应用程序的堆栈。 .NET Aspire 附带了一组针对云原生开发增强的精选组件默认情况下包括遥测、复原、配置和运行状况检查,这个项目来自几年前的实验项目Tye。

.NET团队表示:“结合复杂简单本地开发人员体验,Aspire 可以在第 1 天起轻松发现获取配置云原生应用程序基本依赖项。

在云原生的容器方面,.NET 8 通过简化应用程序打包和使用默认的非 root 用户配置增强安全性来简化容器化。它还提供更小的映像大小以加快部署速度,并提供可选的Dirstroless Ubuntu 映像以增强安全性,以及多功能架构支持

人工智能

随着生成式AI的到来,人工智能领域发生了翻天覆地的变化,从底层语言、运行时,到库的处理,到接口,到跨平台应用,对于 人工智能,.NET都有相对成熟的解决方案了。当下的这个生态位还是蓝海!.NET携带完整的工具生态,杀进来,爽的不要不要的。用 .NET写整个的应用层代码,不需要一行 C++ 代码,就可以架构整个完整的产品体系服务体系。如果竞争对手选择的是其它技术架构,那么,你相对他,会有很强的生产力优势。.NET平台.NET 团队指出了展示模式和实践的各种示例参考模板 可帮助开发人员入门,Semantic kernel 下个月发布正式版,目前是Beta6。

它们包括:

Blazor Blazor 已经发展成为一个全栈 Web 开发框架,这要归功于由 .NET团队的 Steve Sanderson 领导的渲染改进,他是 Blazor 的创建者,最初称为“Blazor United”。它同时提供客户端 (Blazor WebAssembly) 和服务器端 (Blazor Server),能够根据条件提示切换设备

ASP.NET 产品经理 Daniel Roth 今年早些时候是这么说:“在 .NET 8 中,我们正在扩展 Blazor 的功能,以便它能够处理所有 Web UI 需求,包括客户端服务器呈现。作为这项工作的一部分,我们正在将现有的 Blazor Server 和 Blazor WebAssembly 托管模型与新功能合并,例如无状态服务器呈现流式渲染导航表单处理的渐进式增强,以及使用 Blazor 或 Blazor WebAssembly 对每个组件进行交互的能力。

今天的公告总结了所有这些内容:“通过专注于优化页面加载时间、可伸缩性和提升用户体验的几项新增强功能,开发人员现在可以在同一应用中使用 Blazor Server 和 Blazor WebAssembly,在运行时自动用户服务器转移到客户端。由于新的基于“Jiterpreter”的运行时和新的内置组件,您的 .NET 代码在 WebAssembly 上的运行速度明显更快。作为增强 .NET 8 中整体身份验证授权标识管理[9]的一部分,Blazor 现在支持生成基于 Blazor 的完整标识 UI。

.NET MAUI .NET团队表示,.NET多平台应用程序UI扩展了开发人员工具箱,为使用.NET构建跨平台移动桌面应用程序提供了全栈解决方案。 MAUI被称为 Xamarin.Forms 的“演变”,因为它增加了桌面支持,以提供跨 Android、iOS、macOS 和 Windows统一开发体验,帮助开发人员覆盖更广泛的受众。加上开源项目AvaloniaUI 和UNO的补充, .NET 可以覆盖所有平台的UI应用开发,特别是国内信创市场的桌面端.NET具有极强的竞争

在 .NET 8 中,该框架通过对最新移动操作系统的额外支持扩展了其覆盖范围,并改进了性能、可靠性和开发人员体验。NativeAOT(实验性)现在支持针对类似 iOS 的平台。适用于 .NET MAUI 的新 Visual Studio Code 扩展[10]提供了开发跨平台 .NET 移动桌面应用所需的工具。现在支持 Xcode 15 和 Android API 34,允许您面向最新版本的 iOS 和 Android。在性能、控件和 UI 元素以及特定于平台行为方面[11]进行了大量质量改进,例如桌面交互增加了更好点击处理键盘侦听器等。

C#12 借助于C#12 ,你现在可以用简单而优雅的语法在任何类和结构创建主要构造函数,不再需要样板代码来初始化字段属性。使用简洁而富有表现力的语法创建数组spans和其他集合类型。对 lambda 表达式中的参数使用新的默认值。不再需要重载null 检查处理可选参数。您甚至可以使用 using alias 指令为任何类型设置别名,而不仅仅是命名类型

C# 12 中的新增功能[12]”指南解释版本 12 中的以下新功能:

总结

围绕 .NET 8 有一大堆新特性和功能, Microsoft 还宣布 Visual Studio 2022 17.8 已正式发布。该公司还指出其 VS Code 和 C# 开发工具包可以帮助新手入门。Microsoft表示,另一种入门方法是使用SDK中新的.NET的GitHub Codespaces模板[13]。

今天的公告帖子还包括指向更多资源链接,这些资源有助于充实 .NET 8 中跨 ASP.NET Core、Entity Framework Core、NuGet、.NET 运行时、.NET SDK、WPF、ARM64、调试等的新增功能。

相关链接

原文地址:https://blog.csdn.net/luobowangjing/article/details/134587686

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_17651.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注