.NET Conf 2023 大会 .NET 8 发布!

我们很高兴地宣布从今天(2023 年 11 月 14 日)开始 .NET 8 正式发布,它是世界领先的开发平台之一的最新 LTS 版本。.NET 8 提供了数以千计的性能、稳定性和安全性改进,以及平台和工具增强功能,有助于提高开发人员的工作效率和创新速度

在为期三天(11 月 14 日至 16 日)的 .NET Conf 2023 上,.NET 团队、我们的合作伙伴和 .NET 社区 将讨论 .NET 8 中的新增功能以及人们使用 .NET 构建的内容,以满足未来的需求。快来加入我们吧!

.net8

在这个版本中,.NET 重塑了我们构建可按需扩展的智能、云原生应用程序和高流量服务的方式。无论您是部署到 Linux 还是 Windows,使用容器还是您选择的云应用程序模型,.NET 8 都可以让您更轻松地构建这些应用程序。它包括一组经过验证的库,目前 Microsoft 的许多大规模服务都在使用这些库,可以帮助您应对可观察性、弹性、可扩展性、可管理性等方面的基本挑战。

LLM-OpenAI

将大型语言模型(LLM,如 OpenAIGPT)直接集成到您的 .NET 应用程序中。Blazor 使用单个强大的组件模型来处理您的所有 Web UI 需求。使用 .NET MAUI 将您的移动应用程序部署到最新版本的 iOSAndroid。发现新的语言增强功能,使您的 C# 12 代码更加简洁和富有表现力。

让我们看看 .NET 8 中的新增功能。

  • .NET 8https://dotnet.microsoft.com/en-us/download
  • LTS 版本,https://dotnet.microsoft.com/en-us/platform/support/policy/dotnet-core#release-types
  • .NET Conf 2023https://www.dotnetconf.net/

无与伦比的性能 – 体验迄今为止最快的 .NET

.NET 8 在整个堆栈中带来了数千项性能改进。默认情况下会启用一种名为动态配置文件引导优化(PGO)的新代码生成器,它可以根据实际使用情况优化您的代码,并且可以将应用程序的性能提高最多 20%。现在支持的 AVX-512 指令集使您能够对 512 位数据向量执行并行操作,这意味着您可以在更短的时间内处理更多的数据。原始类型(数字及其他类型)现在实现了新的可格式化和可解析接口,这使它们能够直接格式化和解析为 UTF-8,而无需任何转码开销。

每年我们都会讨论 .NET 的性能提升。今年,我们继续致力于将 .NET 的性能推向新的高度。从 .NET 8 的最新 TechEmpower 基准测试中,我们看到 JSON API 场景改进了 18%ASP.NET Core Minimal API 每秒可处理近一百万个请求

.net8

Fortunes 场景更接近实际工作负载,包括数据库访问和服务器端 HTML 渲染。在这个测试中,我们看到 ASP.NET Core 的性能提升了 24%,现在每秒处理的请求数超过 300K

  • .net8 性能改进,https://devblogs.microsoft.com/dotnet/performance-improvements-in-net-8/

.NET Aspire – 一个用于构建可观察、生产就绪的云原生应用程序的固执己见的堆栈

.NET Aspire 是一个使用 .NET 构建弹性、可观察和可配置的云原生应用程序的堆栈。它包括一组针对云原生而增强的精选组件,默认情况下包括遥测、弹性、配置和运行状况检查。.NET Aspire 结合了先进而简单的本机开发人员体验,使您不管在刚开始还是使用了 100 天都能轻松发现、获取和配置云原生应用程序的基本依赖项。.NET Aspire 的第一个预览版现已发布。

.NET Aspire

  • .NET Aspire 第一个预览版,https://devblogs.microsoft.com/dotnet/introducing-dotnet-aspire-simplifying-cloud-native-development-with-dotnet-8/

.NET 8 容器增强功能 – 更安全、更紧凑、更高效

使用 .NET 容器打包您的应用程序比以往更轻松、更安全。每个 .NET 映像都包含一个非 root 用户,从而通过单行配置启用更安全的容器。.NET SDK 工具无需 Dockerfile 即可发布容器映像,并且默认情况下是非 root 的。由于 .NET 基础映像更小,因此可以更快地部署容器化应用程序 - 包括我们映像的新实验变体,这些变体可为本机 AOT 提供真正最小的应用程序。选择使用新的 Chiseled Ubuntu 映像变体进行更多安全强化,以进一步减少攻击面。使用 DockerfileSDK 工具,为任何架构构建应用程序和容器映像。

.net容器化

  • 使用 .NET 容器打包您的应用程序,https://devblogs.microsoft.com/dotnet/securing-containers-with-rootless/

本机 AoT – 迈向更高密度可持续计算的旅程

将您的 .NET 应用程序编译为本机代码,使用更少的内存并立即启动。无需等待 JIT(即时)编译器在运行时编译代码。无需部署 JIT 编译器和IL代码。AOT 应用程序只部署应用程序所需的代码。您的应用程序现在可以在无法使用 JIT 编译器的受限环境中运行。

.net-AoT

  • 本机代码,https://learn.microsoft.com/en-us/dotnet/core/deploying/native-aot/?tabs=net7%2Cwindows

人工智能 – 将 AI 融入您的 .NET 应用程序

生成式人工智能和大型语言模型正在改变人工智能领域,使开发人员能够在其应用程序中创建独特的人工智能体验。.NET 8 通过 .NET SDK 中一流的开箱即用 AI 功能以及与多种工具的无缝集成,使您可以轻松利用 AI

.NET 8System.Numerics 库带来了多项增强功能,以提高其与生成式 AI 工作负载的兼容性,例如集成 Tensor Primitive。随着人工智能应用程序的兴起,涌现出了新的工具和 SDK。我们与众多内部和外部合作伙伴合作,例如 Azure OpenAI、Azure Cognitive Search、Milvus、QdrantMicrosoft Teams,以确保 .NET 开发人员可以通过各自的 SDK 轻松访问各种 AI 模型、服务和平台。此外,开源 Semantic Kernel SDK 简化了这些 AI 组件与新的和现有应用程序的集成,以帮助您提供创新的用户体验。

现在可以使用各种示例和参考模板,展示模式和实践,以便开发人员轻松入门:

  • 客户聊天机器人
  • 检索增强型生成
  • 使用 Azure AI 服务开发应用程序

.net-love-ai

  • AI 功能,https://learn.microsoft.com/en-us/collections/1n31t57k7k6r85
  • Azure OpenAIhttps://azure.microsoft.com/en-us/products/ai-services/openai-service/
  • Azure Cognitive Searchhttps://azure.microsoft.com/en-us/free/ai-services/?ef_id=k_b34c5d449bf4175800e738086ecc7267_k&OCID=AIDcmm5edswduu_SEM__k_b34c5d449bf4175800e738086ecc7267_k_&msclkid=b34c5d449bf4175800e738086ecc7267
  • Milvushttps://milvus.io/docs/v2.2.x/install-csharp.md
  • Qdranthttps://github.com/qdrant/qdrant-dotnet
  • Microsoft Teamshttps://github.com/microsoft/teams-ai
  • Semantic Kernelhttps://learn.microsoft.com/en-us/semantic-kernel/overview/
  • 客户聊天机器人,https://github.com/dotnet/eShop
  • 检索增强型生成,https://github.com/Azure-Samples/azure-search-openai-demo-csharp
  • 使用 Azure AI 服务开发应用程序,https://devblogs.microsoft.com/dotnet/demystifying-retrieval-augmented-generation-with-dotnet/

Blazor – 使用 .NET 构建全栈 Web 应用程序

.NET 8 中的 Blazor 可以同时使用服务器和客户端来处理您的所有 Web UI 需求。这是全栈 Web UI !通过专注于优化页面加载时间、可扩展性和提升用户体验的多项新增强功能,开发人员现在可以在同一应用程序中使用 Blazor ServerBlazor WebAssembly,在运行时自动将用户从服务器转移到客户端。您的 .NET 代码在 WebAssembly 上的运行速度显然更快,这要归功于新的基于 “Jiterpreter” 的运行时和新的内置组件。作为 .NET 8 中增强整体身份验证、授权和身份管理的一部分,Blazor 现在支持生成完整的基于 Blazor 的身份 UI

Blazor Full Stack

  • Blazor ServerBlazor WebAssemblyhttps://dotnet.microsoft.com/en-us/apps/aspnet/web-apps/blazor
  • 整体身份验证、授权和身份管理,https://devblogs.microsoft.com/dotnet/whats-new-with-identity-in-dotnet-8/

.NET MAUI – 提升性能、可靠性和开发人员体验

.NET MAUI 为您提供单一项目系统和单一代码库来构建 WinUI、Mac Catalyst、iOS 和 Android 应用程序。本机 AOT(实验性)现已在 iOS 等平台上支持。适用于 .NET MAUI 的新 Visual Studio Code 扩展为您提供了开发跨平台 .NET 移动和桌面应用程序所需的工具。现在支持 Xcode 15Android API 34,允许您针对最新版本的 iOSAndroid 进行开发。在性能、控件和 UI 元素以及特定于平台的行为方面进行了大量的质量改进,例如桌面交互添加了更好的单击处理、键盘侦听器等。

.net-maui

  • .NET MAUI – 提升性能、可靠性和开发人员体,https://devblogs.microsoft.com/dotnet/announcing-dotnet-maui-in-dotnet-8/
  • 适用于 .NET MAUI 的新 Visual Studio Code 扩展,https://devblogs.microsoft.com/visualstudio/announcing-the-dotnet-maui-extension-for-visual-studio-code/
  • 性能,https://devblogs.microsoft.com/dotnet/dotnet-8-performance-improvements-in-dotnet-maui/

C# 12 功能 – 简化语法以提高开发人员的工作效率

C# 12 让您的编码体验更加高效和愉快。现在,您可以使用简单而优雅的语法在任何类和结构中创建主构造函数。不再需要样板代码来初始化您的字段和属性。当您使用简洁且富有表现力的语法创建数组、跨度和其他集合类型时会感到高兴。对 lambda 表达式中的参数使用新的默认值。不再需要重载或空检查来处理可选参数。您甚至可以使用 using 别名指令为任何类型添加别名,而不仅仅是命名类型!

  • 集合表达式
// 创建一个 list:
List<int> a = [1, 2, 3, 4, 5, 6, 7, 8];

// 创建一个 span
Span<char> b  = ['a', 'b', 'c', 'd', 'e', 'f', 'h', 'i'];

// 使用扩展运算符来连接
int[] array1 = [1, 2, 3];
int[] array2 = [4, 5, 6];
int[] array3 = [7, 8, 9];
int[] fullArray = [..array1, ..array2, ..array3]; // contents is [1, 2, 3, 4, 5, 6, 7, 8, 9]

有关 C# 最新版本的更多信息,请参阅宣布 C# 12

  • 宣布 C# 12https://devblogs.microsoft.com/dotnet/announcing-csharp-12/

Visual Studio 系列工具支持 .NET 8

我们拥有一组出色的工具,可帮助您在开发工作流程中实现最高效率并充分利用 .NET 8Visual Studio 2022 17.8 版本与 .NET 8 一起发布,支持 .NET 8、C# 12 语言增强功能以及各种新的生产力功能。如果您正在学习和(或)想要快速熟悉运行时,VS CodeC# 开发工具包是开始使用 .NET 8 的好方法,并且可以在 Linux、macOSGitHub Codespaces 中使用。适用于 .NET 的新 GitHub Codespaces 模板附带 .NET SDK 和一组配置的扩展,是开始使用 .NET 8 的最快方法之一。

  • Visual Studio 2022 17.8 版本,https://devblogs.microsoft.com/visualstudio/visual-studio-17-8-now-available/
  • VS CodeC# 开发工具包https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.csdevkit
  • GitHub Codespaces 模板,https://github.com/codespaces

.NET 8 中的附加功能

1、ASP.NET Core

简化单页应用程序(SPA)和 Blazor 的身份,提供基于 cookie 的身份验证、预构建的 API、令牌支持和新的身份 UI。并通过表单绑定增强最小 API,防伪支持防止跨站点请求伪造(XSRF/CSRF),以及 asParameters 支持使用 Open API 定义进行参数绑定。

  • https://learn.microsoft.com/en-us/aspnet/core/release-notes/aspnetcore-8.0?view=aspnetcore-8.0#minimal-apis

2、ASP.NET Core 工具

路由语法突出显示、自动完成和分析器可帮助您创建 Web API

  • https://devblogs.microsoft.com/dotnet/aspnet-core-route-tooling-dotnet-8/

3、Entity Framework Core

提供新的“复杂类型”作为值对象、原始集合以及 SQL Server 对分层数据的支持。

  • https://devblogs.microsoft.com/dotnet/announcing-ef8-rc2/

4、NuGet

帮助您审核项目和解决方案中的 NuGet 包是否存在任何已知的安全漏洞。

  • https://learn.microsoft.com/en-us/nuget/concepts/auditing-packages

5、.NET Runtime

WebAssembly (WASM)Android 带来新的 AOT 编译模式。

  • https://devblogs.microsoft.com/dotnet/announcing-dotnet-8-rc1/#androidstripilafteraot-mode-on-android

6、.NET SDK

恢复终端构建输出和生产就绪默认值。

  • https://learn.microsoft.com/en-us/dotnet/core/whats-new/dotnet-8#net-sdk

7、WPF

支持 OpenFolderDialog 并在 RDP 中启用硬件加速

  • https://devblogs.microsoft.com/dotnet/wpf-file-dialog-improvements-in-dotnet-8/
  • https://devblogs.microsoft.com/dotnet/announcing-dotnet-8-rc1/#wpf-hardware-acceleration-in-rdp

8、ARM64

通过与 ARM 工程师合作,显著增强了 ARM64 平台的功能并提高了代码质量。

  • https://devblogs.microsoft.com/dotnet/this-arm64-performance-in-dotnet-8/

9、Debugging

显示调试摘要并为常用的 .NET 类型提供简化的调试代理。

  • https://devblogs.microsoft.com/dotnet/debugging-enhancements-in-dotnet-8/

10、System.Text.Json

帮助填充只读成员、自定义未映射成员处理并改进本机 AOT 支持。

  • https://devblogs.microsoft.com/dotnet/system-text-json-in-dotnet-8/

11、.NET Community Toolkit

加速构建 .NET 库和应用程序,同时确保它们精简且兼容 AOT(包括 MVVM 源生成器!)

  • https://devblogs.microsoft.com/dotnet/announcing-the-dotnet-community-toolkit-821/

12、Azure

通过 AzurePaaS 服务(例如适用于 WindowsLinux 的应用服务、静态 Web 应用、Azure FunctionsAzure 容器应用)支持 .NET 8

  • https://azure.github.io/AppService/2023/11/14/dotnet8-ga.html

13、F# 8

包括重大的语言更改、新的诊断、可用性改进和项目编译中的性能增强,以及对 FSharp.Core 标准库的升级。

  • https://devblogs.microsoft.com/dotnet/announcing-fsharp-8/

.NET 8 中的新增功能

查看我们的文档以了解其他所有内容!

  • https://learn.microsoft.com/en-us/dotnet/core/whats-new/dotnet-8

.NET 8 入门

为了获得 .NET 8 的最佳开发体验,我们建议您使用最新版本的 Visual Studio 和 Visual Studio CodeC# 开发工具包。设置完成后,您应该执行以下操作:

1、尝试新功能和 API

下载 .NET 8 并在我们的问题跟踪器中报告问题。

  • https://dotnet.microsoft.com/en-us/download/dotnet/8.0
  • https://github.com/dotnet/core/issues/new/choose

2、测试您当前应用程序的兼容性

了解您的应用是否受到 .NET 8 中默认行为更改的影响。

  • https://learn.microsoft.com/en-us/dotnet/core/compatibility/8.0

3、通过选择加入更改来测试您的应用程序

.NET 8 具有可选择的行为更改,这些更改仅在启用时影响您的应用程序。尽早了解和评估这些更改非常重要,因为它们可能会在下一个版本中成为默认设置。

  • https://learn.microsoft.com/en-us/dotnet/core/compatibility/8.0

4、使用升级助手更新您的应用程序

使用升级助手,只需点击几下即可升级您的应用程序。

  • https://dotnet.microsoft.com/en-us/platform/upgrade-assistant

5、了解你受到支持

.NET 8 得到 Microsoft 的正式支持,作为长期支持(LTS)版本,支持期限为三年。

  • https://dotnet.microsoft.com/en-us/platform/support/policy/dotnet-core#release-types

6、加餐:.NET 8 的 eShop 示例

使用我们的新 eShop 示例(现已针对 .NET 8 进行更新)遵循所有最佳编码和架构实践!

  • https://github.com/dotnet/eshop
  • Visual Studio,https://visualstudio.microsoft.com/downloads/
  • Visual Studio Code C# 开发工具包,https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.csdevkit

庆祝 .NET 8 发布

.NET Conf 2023

请于 2023 年 11 月 14 日至 16 日 与我们一起庆祝 .NET 8 发布!

  • https://www.dotnetconf.net/

.NET 的下一步是什么?

参与并了解有关 .NET 8 和下一版本 .NET 的最新消息。

  • https://dotnet.microsoft.com/next

1、获得 C# 认证

通过 freeCodeCamp C# 认证 获得荣誉徽章。

  • https://devblogs.microsoft.com/dotnet/announcing-foundational-csharp-certification/

2、学习 .NET 8

为初学者和高级 .NET 开发人员提供针对 .NET 8 更新的免费教程、视频、课程等。

  • https://learn.microsoft.com/en-us/collections/odr5beo72wn3n3?wt.mc_id=dotnetconf_learncollection_video_DevRelStudios

3、请参阅开发者故事

查看开发人员迁移到现代 .NET 的成功案例。

  • https://devblogs.microsoft.com/dotnet/category/developer-stories/

4、了解为什么选择 .NET?

阅读我们最近关于 .NET 便利性的博客系列。

  • https://devblogs.microsoft.com/dotnet/why-dotnet/

.NET ❤️ 我们的社区

最后,我们想对大家说:

ts

微软最有价值专家(MVP)

微软最有价值专家是微软公司授予第三方技术专业人士的一个全球奖项。30年来,世界各地的技术社区领导者,因其在线上和线下的技术社区中分享专业知识和经验而获得此奖项。

MVP

MVP 是经过严格挑选的专家团队,他们代表着技术最精湛且最具智慧的人,是对社区投入极大的热情并乐于助人的专家。MVP 致力于通过演讲、论坛问答、创建网站、撰写博客、分享视频、开源项目、组织会议等方式来帮助他人,并最大程度地帮助微软技术社区用户使用 Microsoft 技术。

更多详情请登录官方网站:

  • https://mvp.microsoft.com/zh-cn

msdn

转载声明:

  • https://mp.weixin.qq.com/s/Xt88shmmu7GxeZE1tVp0Zw
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值