微软发布了开发社区采用.NET Standard的最新信息

  • 2019 年 10 月 3 日
  • 笔记

最近,微软发布了开发社区当前采用.NET Standard的最新信息。.NET Standard是API的正式规范,现有.NET实现在不同平台的是通用的(从而允许跨平台开发)。当前规范(版本2.0)在两年前发布,在.NET Core 2.0和.NET Framework 4.6.1平台(以及其他平台)中得到支持。根据微软.NET团队的项目经理和该标准的撰写人Immo Landwerth的说法:

.NET Standard用于共享代码。.NET Standard是一组API,所有.NET实现必须提供这些API才能符合标准。这统一了.NET实现并防止了未来的碎片化。它取代了可移植类库(PCL)并作为构建可在任何地方工作的.NET库的工具。

使用.NET Standard允许开发人员创建可以跨不同.NET实现使用的.NET库。这些库也可以作为NuGet包进行分发和使用。Visual Studio从版本15.3开始,Visual Studio支持使用.NET Standards 2.0进行跨平台开发。 

.NET Standard的当前采用情况是通过从nuget.org收集的数据来衡量的,考虑到(1)前1000个包(按下载次数排名)和(2)nuget.org上提供的所有包。截至2019年7月,前1000个软件包中47%和所有软件包的30%的都支持.NET Standard。自.NET Standard 2.0规范发布以来,已经测量了采用率。对它们采用率增长的线性推断估计大约2022年能达到100%采用率 – 对于这是一个趋势线预测这一事实有很强的评价。 当前每周的数据都在增长 https://www.nuget.org/stats

image

作为其.NET库指南的一部分,Microsoft建议所有开发人员都使用.NET Standard:

除了少数例外,所有库都应该以.NET Standard为目标。例外包括仅UI库(例如WinForms控件)或库,它们就像单个应用程序中的构建块一样。

.NET Standard目前正在更新到2.1版,其中包括对较新版.NET实现的支持(包括计划于下个月发布的 .NET Core 3.0 )。但是考虑到.NET Framework 4.8不会实现2.1规范,Microsoft声明所有库都应该继续针对2.0规范。

有关.NET Standard的更多信息,请访问此处。此外,Immo Landwerth 还在YouTube上发布一系列精选短片,列出了.NET Standard的工作原理,以及开发人员如何使用它。