.NET 5简介


这是来自微软官方的.NET5介绍,这里简单介绍一下:
今天,我们宣布.NET Core 3.0之后的下一个版本将是.NET 5! 我们将在.NET 5中引入新的.NET API,运行功能和语言功能。我们会跳过版本4,我们打算在2020年11月发布.NET 5,并在2020年上半年推出第一个预览版。将在Visual Studio 2019,Visual Studio for Mac和Visual Studio Code的未来更新中支持它。

.NET 5 = .NET Core vNext
.NET 5是.NET Core的下一步。该项目旨在通过以下几个关键方式改进.NET:

  • 生成单个.NET运行时和框架,可以在任何地方使用,并具有统一的运行时行为和开发人员体验。
  • 通过充分利用.NET Core,.NET Framework,Xamarin和Mono扩展.NET的功能。
  • 从单个代码库构建该产品,开发人员(Microsoft和社区)可以一起工作并一起扩展,从而改进所有方案。

使用.NET 5,无论您正在构建哪种类型的应用程序,您的代码和项目文件都将看起来和感觉相同。
您喜欢.NET Core的所有内容将继续存在:
  • 在GitHub上开源和面向社区。
  • 跨平台实施。
  • 支持利用特定于平台的功能,例如Windows上的Windows窗体和WPF以及来自Xamarin的每个本机平台的本机绑定。
  • 高性能。
  • 并排安装。
  • 小项目文件(SDK风格)。
  • 有能力的命令行界面(CLI)。
  • Visual Studio,Visual Studio for Mac和Visual Studio代码集成。

这是新的东西:
  • 您将有更多关于运行时体验的选择(更多内容见下文)。
  • Java互操作性将在所有平台上提供。
  • 多个操作系统将支持Objective-C和Swift互操作性。
  • CoreFX将扩展为支持.NET的静态编译(提前 - AOT),更小的占用空间和对更多操作系统的支持。

高吞吐量和高生产率
从一开始,.NET就依赖于即时编译器(JIT)中间语言(IL)代码转换为优化的机器代码。从那时起,我们构建了业界领先的基于JIT的托管运行时,该运行时具有非常高的吞吐量,并且还支持开发人员体验,使编程变得快速而简单。
JIT非常适合长期运行的云和客户端方案。他们能够生成针对特定机器配置的代码,包括特定的CPU指令。

快速启动,占用空间小,内存使用率低
Mono Project的大部分精力都集中在移动和游戏控制台上。该项目的关键功能和成果是基于行业领先的LLVM编译器项目的 .NET AOT编译。Mono AOT编译器使.NET代码可以构建到可以在机器上运行的单个本机代码可执行文件中,就像C ++代码一样。AOT编译的应用程序可以在小地方高效运行,并在需要时交换吞吐量以进行启动。
有两种类型的AOT解决方案:

  • 需要100%AOT编译的解决方案。
  • 解决方案,其中大多数代码是AOT编译的,但JIT或解释器可用,并用于对AOT不友好的代码模式(如泛型)。

点击标题见原文