百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 文章教程 > 正文

.NET 9 中的新增功能:每个开发人员都应该知道的基本更新

xsobi 2025-01-05 20:45 1 浏览

介绍:

.NET 9 现已推出,其中包含适用于云原生和跨平台开发的新功能和性能改进。作为 .NET 8 的继任者,此版本侧重于提高生产力、安全性以及对现代开发需求的支持。让我们深入了解整个 .NET 9 生态系统的关键更新,包括 C# 13、ASP.NET Core、.NET MAUI、EF Core、ML.NET 等。

1. .NET 运行时:增强的性能和新的属性模型

.NET 9 运行时带来了几个值得注意的变化:

  • 功能切换属性:新的属性模型允许库通过修剪支持切换功能,从而优化内存使用以实现更轻量级的部署。

  • 动态垃圾回收:运行时现在根据应用程序大小动态调整垃圾回收,从而减少内存使用并提高性能。

  • 循环优化和Arm64支持:关键的性能增强包括优化的循环处理、内联改进和Arm64特定的代码生成。

有关更多详细信息,请参阅 .NET 9 Runtime 中的新增功能

2. .NET库:改进的JSON处理,LINQ更新和加密增强

.NET 9 库专注于简化代码和提高效率:

  • System.Text.Json:可为 的引用类型注释、JSON 架构导出和新的缩进选项提供了对 JSON 数据处理的更多控制。

  • LINQ:和 方法支持无需中间组分配的聚合,从而提高了性能。CountByAggregateBy

  • 集合和加密:增强功能包括项目优先级方法和用于安全应用程序的新加密算法,如 KMAC。PriorityQueue

  • 反射增强功能:提供了一种使用 PDB 支持保存发出的程序集的方法,使运行时代码的生成和调试更加容易。PersistedAssemblyBuilder

.NET 9 库中的新增功能中探索更多信息。

3. .NET SDK:简化的工作流程和安全审计

SDK 引入了有价值的工具来改进项目管理和安全性:

  • 工作负载集:除非明确更新,否则工作负载现在可以保持固定版本,从而防止版本不匹配问题。

  • NuGet 安全审核:默认情况下,直接依赖项和可传递依赖项都会接受安全检查。

  • 增强的构建日志记录:终端记录器提供警告和故障的摘要,从而简化故障排除过程。

  • MSBuild 分析器:新的分析器通过在部署之前识别问题来帮助保持代码质量。

有关详细信息,请参阅适用于 .NET 9 的 SDK 中的新增功能。

4. ML.NET 4.0:扩展的 Tokenizer 和模型支持

ML.NET 4.0 可以更轻松地将机器学习嵌入 .NET 应用程序中,并增加了对 Tiktoken 等分词器以及 Llama 和 CodeGen 等模型的支持。

5. .NET Aspire:云就绪的生产级堆栈

.NET Aspire 是 .NET 9 中的新增功能,它为云原生应用程序提供了一个有主见的堆栈。.NET Aspire 通过一套 NuGet 包提供,可帮助开发人员通过满足常见的云原生需求来创建可扩展的分布式应用程序。

6. ASP.NET Core 9.0:Blazor、SignalR 和 API 改进

ASP.NET Core 的更新增强了性能和开发人员体验:

  • Blazor & SignalR:通过更好地支持实时应用程序,开发人员可以构建更响应的交互式应用程序。

  • 最少的API和OpenAPI:这些更新使得创建轻量级和文档化的API变得更容易,非常适合微服务架构。

7. .NET MAUI:跨平台开发的质量改进

在 .NET 9 中,.NET MAUI 侧重于稳定性和性能,以增强开发人员在构建跨平台移动和桌面应用程序方面的体验。

8. 实体框架核心(EF Core):Azure Cosmos DB和AOT编译

EF Core 为 Azure Cosmos DB 引入了重大更新,侧重于效率和可靠性。新的 AOT 编译和预编译查询可实现更快的数据库交互。

9. C# 13:现代开发的语言增强功能

带有 .NET 9 的 C# 13 版本包括多个新功能,旨在减少样板代码和改进功能:

  • Params Collections:允许更灵活的集合处理。

  • 转义序列和 ref 结构改进:扩展的转义序列和 ref 结构支持使 C# 13 成为高性能应用程序的理想选择。

C# 13 中的新增功能中阅读有关语言更新的更多信息。

10. Windows Presentation Foundation (WPF):Windows 11 兼容性

WPF 现在支持 Windows 11 主题以及基于连字符的连字,以获得更现代的 UI 体验。

.NET 9 带来了大量新功能和改进,专为现代、基于云的高性能应用程序量身定制。无论您是使用云原生应用程序、构建交互式 UI 还是嵌入机器学习,.NET 9 都能满足每个开发人员的需求。

相关推荐

MySQL 正则表达式最全介绍

MySQL支持使用正则表达式进行模式匹配和文本搜索。正则表达式提供了一种强大的工具,可以用来匹配和检索字符串中的复杂模式。MySQL中的正则表达式功能主要在REGEXP或RLIKE运算符中使用。1....

正则前面的 (?i) (?s) (?m) (?is) (?im) 是什么意思

Q:经常看见的正则前面的(?i)(?s)(?m)(?is)(?im)是什么意思?...

SQL中的正则表达式

正则表达式通常用来匹配字符,比如在一段字符中截取我们想要的字符,又或者将不想要的字符串替换,或者统计某个或者某几个字符出现的次数,我们都可以使用Oracle提供的正则表达式语法来完成。1.比如,我们在...

学习VBA,报表做到飞 第四章 正则表达式 4.10 贪婪模式与懒惰模式

第四章正则表达式4.10贪婪模式与懒惰模式正则表达式匹配时默认为贪婪模式,也就是尽可能多的匹配。有时候我们需要对符合条件的内容分开匹配,就要用到懒惰模式。...

Python re模块 正则表达式之compile函数

一、应用场景为了重复利用同一个正则对象,需要多次使用这个正则表达式的话,使用re.compile()保存这个正则对象以便复用,可以让程序更加高效。二、使用方法...

几条常用的JavaScript正则表达式

在做项目或者代码编写过程中,一般会遇到验证电话、邮箱等格式是否正确合法的问题。通常我们会使用正则表达式,自己写很麻烦,且正则表达式又不是那么容易记住。所以现在分享几条常用的正则表达式,需要的时候直接复...

C语言中使用正则表达式

POSIX规定了正则表达式的C语言库函数,参见regex(3),我们已经学了很多C函数的用法读者应该具备自己看懂man手册的能力C语言中使用正则表达式一般分为三步:1.编译正则表达式regco...

VBA与Excel入门系列-12-正则表达式(上篇)

系统环境:Windows10...

系列专栏(八):JS的第七种基本类型Symbols

ES6作为新一代JavaScript标准,已正式与广大前端开发者见面。为了让大家对ES6的诸多新特性有更深入的了解,MozillaWeb开发者博客推出了《ES6InDepth》系列文章。CSDN...

EXCEL正则表达式的基础语法

正则表达式的基本概念及用途了解之后,我们就来学习下具体的语法,先以一个简单的例子来讲解。基础语法:比如,A1单元格中有一串字符:aabbccdd...

这几个冷门到你没听过的App,好用到为你打开新世界大门

一些好用的App总被埋没在数以百万计的应用商店中。今天为大家推荐几款Windows、Android、iOS、macOS平台里略显小众、但足够好用的遗珠App。万彩办公大师(Windows)转换Offi...

C/C++知识分享:C语言正则表达式

C语言的正则表达式规则,特此跟大家分享。一、C语言如何使用正则表达式?C语言使用正则表达式的方法很简单,只需要包含正则表达式头文件即可:...

Github工具库(二)

作者:Yunying...

在 JavaScript 中替换所有指定字符 3 种方法

在JS没有提供一种简便的方法来替换所有指定字符。在Java中有一个replaceAll(),replaceAll(Stringregex,Stringreplacement))方法...

正则表达式进阶

正则表达式,是每个程序员的必备的技能1.贪婪匹配和惰性匹配...