.NET Standard(ドットネットスタンダード)は .NETにおいて採用されていた統一API規格である".NET Standard is a formal specification of .NET APIs" .NET Standard. Microsoft. 2022-12-18閲覧.。
概要 2000年代の.NETでは様々な.NETランタイム(実装)間でランタイムAPIに差があり、命令セットとして可搬性があってもアプリケーションとして可搬性に欠けていた.NET Standard "The motivation behind .NET Standard was to establish greater uniformity in the .NET ecosystem." Microsoft. 2022-12-18閲覧.。これを解決するために.NET統一APIセット規格として提案されたものが.NET Standardである。
.NET Standardの策定とランタイムによる実装によって、.NET Framework・Mono・Xamarin・Unity など様々なプラットフォームでアプリケーションの可搬性が得られたThe future of .NET Standard "this has served us well: .NET Standard is supported by over 77% of the top 1000 packages. And if we look at all packages on NuGet.org that have been updated in the last 6 months, the adoption is at 58%." Landwerth. (2020) .NET Blog.。
.NETが様々なプラットフォームへ展開され実装が増えるにつれ.NET Standard変更の影響範囲は大きくなった。その結果、規格バージョンアップに必要な合意形成のコストが上昇し、機能追加の速度が低下したThe future of .NET Standard "in .NET Standard 2.1, we standardized brand new APIs and that’s where we saw quite a bit of friction. ... all APIs must be reviewed by the .NET Standard review board. ... These reviews are necessary because there are different implementations of the .NET stack, with different constraints. ... you realize that .NET Standard can’t ship very frequently." Landwerth. (2020) .NET Blog.。
.NET Frameworkを有するマイクロソフトはMonoとXamarinを買収し多くの.NETランタイムはマイクロソフト傘下へと収束した。それらの基盤は.NET Coreと統合され、結果として様々な実装者間の合意形成として必要だったAPI規格の重要性は下がっていった。
マイクロソフトは .NET Standard が歴史的役割を終えたとして、.NET Standard 2.1 をもって .NET Standard 規格の更新を終了すると発表したThe future of .NET Standard ".NET Standard 2.1 will be the last version of .NET Standard" Landwerth. (2020) .NET Blog.。.NET 5以降において新たな.NET APIはランタイムの共通ライブラリとして標準化無しに直接提供される。
脚注
関連項目 アプリケーションプログラミングインタフェース 標準化