IT之家 11 月 9 日新闻,当地时间 11 月 8 日星期二,微软 .NET Conf 在线活动正式开幕。作为微软开源和跨平台开发平台,.NET 7 首个正式版本已经推出,这也代表了微软的统一工作终于完成。
微软表示,使用 .NET 7 可以轻松使用 .NET 7 项目容器化,在 GitHub 操作中设置 CI / CD 工作流,实现云原生可观察性。它有一个广泛的.NET 包括生态系统,包括超过 330000 个包。
值得一提的是,.NET 7 支持标准期限 (STS) 支持版本 18 个月而非 36 个月。在整个 .NET 7 目前版本超过了。 8900 名贡献者做到了 28k 代码贡献。
据介绍,.NET 7 新功能包括
ASP.NET Core 7
Entity Framework Core 7
.NET MAUI
Windows Forms
WPF
Orleans 7
.NET 7 优化主要集中在:
统一基类库(Base Class Library - BCL)、新的 TFM、对 ARM64 原生支持,Linux 上增强的 .NET 支持
简单来说,如果使用 .NET 7.开发人员只需要学习一次就可以通过一次 SDK、多种类型的应用程序(云,Web、桌面,移动,游戏,IoT 和 AI)。
此外,微软还优化了它 Arm 机器的性能包括估算 L3 缓存大小,引入 LSE 使用内部函数的原子指令和优化库。
核心数 | L3 缓存大小 |
---|---|
1~4 | 4MB |
5~16 | 8MB |
17~64 | 16MB |
65 | 32MB |
IT之家得知,.NET 6 包含在 Ubuntu 22.04 (Jammy) 中,可用 apt install dotnet6 命令安装。此外,还有一个超小容器镜像,优化、预建、开箱即用。
dotnet % docker run --rm dotnet-chiseled 42 42 ,d ,d 42 42 42 ,adPPYb,42 ,adPPYba, MM42MMM 8b,dPPYba, ,adPPYba, MM42MMM a8" `Y42 a8" "8a 42 42P' `"8a a8P_____42 42 8b 42 8b d8 42 42 42 8PP 42 "8a, ,d42 "8a, ,a8" 42, 42 42 "8b, ,aa 42, `"8bbdP"Y8 `"YbbdP"' "Y428 42 42 `"Ybbd8"' "Y428 .NET 7.0.0-preview.7.22375.6 Linux 5.10.104-linuxkit #1 SMP PREEMPT Thu Mar 17 17:05:54 UTC 2022 OSArchitecture: Arm64 ProcessorCount: 4 TotalAvailableMemoryBytes: 3.83 GiB
其他方面,除了 x64 架构(64 位 Intel / AMD)、ARM64(64 位 ARM)和 s390x(64 位 IBM Z)外,.NET 也可用于针对 RHEL 的 ppc64le(64 位 IBM Power)架构 8.7 和 RHEL 9.1。
现代化方面,.NET SDK 微软已经支持输出容器图像,并将带来持续的性能改进。
现代化方面,.NET SDK 微软已经支持输出容器图像,并将带来持续的性能改进。
假如你现在用的是.NET Core 版本,微软 .NET 7 可以直接升级,如果直接升级的话.NET Framework 微软提供了一些令人信服的迁移理由。
.NET 升级助手包括更多的分析器、代码修复程序和升级支持更多的应用程序类型,可以帮助开发者更容易地升级 .NET 7 应用组合,减少升级应用的工作量。此外,.NET 7 分布式云原生应用更容易构建和部署。
性能
. NET 7 有许多性能优化,如:
堆栈更换 (On Stack Replacement - OSR),提高启动时间。
指导优化配置文件 (Profile-Guided Optimization - PGO)
原生 AOT ,主要优点是启动时间、内存使用、访问受限平台(不允许) JIT)而且磁盘空间更小。
此外,微软还澄清了一些.NET 7 开发者可以参考官方文件中断变更内容。