.NET周りの関係がよくわからない

.NET Framework とか.NET + 数字 とか.NET Core とかASP.NET とかの意味や関係がよくわかっていないのでまとめたい

ASP.NET Core
ASP.NET Core は、インターネットに接続された最新のクラウド対応アプリを構築するための、クロス プラットフォームで高パフォーマンスのオープン ソース フレームワークです。
.NET は、Windows、Linux、macOS で Web サイト、サービス、コンソール アプリケーションを実行するためのクロス プラットフォームの実装です。GitHub で .NET はオープンソースです。.NET は以前 .NET Core と呼ばれていました。
- .NET Core → .NET + 数字?

ASP.NET
ASP.NET は、HTML、CSS、JavaScript を使用して優れた Web サイトと Web アプリケーションを構築するための無料の Web フレームワークです。 Web API を作成し、Web ソケットなどのリアルタイム テクノロジを使用することもできます。
ASP.NET Coreは、ASP.NET の代替手段です。 ASP.NET と ASP.NET Coreのどちらかを選択する方法に関するガイダンスを参照してください。
- ASP.NETとASP.NET Coreは別物
- ASP.NETは「ASP.NET 4.x」と表現されることもあるっぽい
ASP.NET 4.x は成熟したフレームワークであり、Windows 上でエンタープライズ グレードのサーバー ベース Web アプリを構築するために必要なサービスを提供します。
ASP.NET Core は ASP.NET 4.x を再設計したものです。
- .NET FrameworkもASP.NET 4.xと呼ばれるっぽい
ASP.NET
.NET Framework (ASP.NET 4.x とも呼ばれます) に付属している ASP.NET の元の実装。ASP.NET は、元の ASP.NET と ASP.NET Core の両方を参照する包括的な用語である場合があります。 どちらを意味するかはコンテキストによって決まります。 両方の実装を意味するために ASP.NET を使っているのではないことを明確にしたい場合は、ASP.NET 4.x を参照してください。
ASP.NET Core とASP.NET 4.x の違い
ASP.NET Core | ASP.NET 4.x |
---|---|
Windows、macOS、Linux が対象 | Windows が対象 |
Razor Pages は、ASP.NET Core 2.x の時点で Web UI を作成する場合に推奨される方法です。 MVC、Web API、SignalR についても参照してください。 | Web Forms、SignalR、MVC、Web API、WebHooks、または Web ページを使います |
コンピューターごとに複数のバージョン | コンピューターごとに 1 つのバージョン |
C# または F# を使い、Visual Studio、Visual Studio for Mac、または Visual Studio Code で 開発 | C#、VB、または F# を使い、Visual Studio で開発 |
ASP.NET 4.x より高いパフォーマンス | よいパフォーマンス |
.NET Core ランタイムを使用する | .NET Framework ランタイムを使います |
- ASP.NET 4.x = .NET Framework?

.NET
.NET は、さまざまな種類のアプリケーションを構築するための、無料のクロスプラットフォーム のオープンソース開発者プラットフォーム です。 .NET は、多くの大規模アプリによって運用環境で使用される高パフォーマンス ランタイム上に構築されています。
.NET の歴史
2002 年に、Microsoft によって、Windows アプリを作成するための開発プラットフォームである .NET Framework がリリースされました。 現在、.NET Framework はバージョン 4.8 であり、引き続き Microsoft によって完全サポートされています。2014 年に、Microsoft によって、.NET Framework のクロスプラットフォームのオープンソースの後継版として .NET Core が導入されました。 この新しい .NET の実装では、バージョン 3.1 までは .NET Core という名前が保持されていました。 .NET Core 3.1 の次のバージョンからは .NET 5 という名前になりました。
新しい .NET バージョンが年に 1 回リリースされ続けており、そのたびにメジャー バージョン番号が大きくなっています。 重要な新機能が含まれ、新しいシナリオが可能になることも多いです。
.NET エコシステム
.NET には複数のバリエーションがあり、それぞれ異なる種類のアプリがサポートされています。 複数のバリエーションがある理由には、歴史的なものと技術的なものがあります。.NET の実装 (歴史順):
・ .NET Framework -- Windows と Windows Server の幅広い機能にアクセスできます。 また、Windows ベースのクラウド コンピューティングにも広く使用されます。 最初の .NET です。
・ Mono -- .NET Framework のクロスプラットフォーム実装。 最初のコミュニティおよびオープンソース .NET です。 Android、iOS、Wasm アプリに使用されます。
・ .NET (Core) -- .NET Framework との大幅な互換性を保ちながら、クラウド時代に向けて見直された、クロスプラットフォームでオープンソースの .NET 実装。 Linux、macOS、および Windows アプリに使用されます。
.NET は、さまざまな種類のアプリケーションをビルドするためのf ツール、プログラミング言語、およびライブラリで構成される開発者向けプラットフォームです。
.NET にはさまざまな実装があります。 各実装により、.NETコードをさまざまな場所 (Linux、macOS、Windows、iOS、Android など) で実行できます。
.NET
一般に、 .NET は .NET Standard とすべての .NET 実装およびワークロードを表す包括的な用語。
具体的には、.NET とは、すべての新規開発に推奨される .NET の実装を意味します: .NET 5 (および .NET Core) 以降のバージョン。
たとえば、最初の意味は、".NET の実装" や ".NET 開発プラットフォーム" などの語句で使用されます。2 番目の意味は、.NET SDK や .NET CLI などの名前で使用することを目的としています。.NET は常にすべて大文字で表し、".Net" とは表記されません。
.NET のドキュメントを参照してください
- .NETは、Microsoftが開発するプラットフォームである、というまとめ方でよさそう

.NET Framework
.NET Framework は、.NET のオリジナル実装です。Windows で Web サイトやサービス、デスクトップ アプリなどを実行するサポートを行います。
Microsoft .NET Framework(マイクロソフト ドットネット フレームワーク)は、マイクロソフトが開発したアプリケーション開発・実行環境である。
Windowsアプリケーションだけでなく、XML WebサービスやウェブアプリケーションなどWebベースのアプリケーションなども包括した環境となっている。一般に.NETという場合、.NET全体の環境を指す。現在はOSS版の.NET CoreやMonoも包括した技術仕様の総称を.NETと呼び、プロプライエタリの初期から存在する従来のWindows専用実装のみを.NET Frameworkと呼んで区別している。
バージョン4.8をもって.NET Frameworkのメジャーアップデートを終了することがアナウンスされている[1]。セキュリティとバグ修正のための更新は継続されるが、以降の新規開発における推奨環境は.NET Coreの次期バージョン「.NET 5」およびそれ以降である。
.NET Framework
Windows でのみ動作する .NET の実装。 共通言語ランタイム (CLR)、基本クラス ライブラリ (BCL)、および ASP.NET、Windows フォーム、WPF などのアプリケーション フレームワーク ライブラリが含まれます。「.NET Framework ガイド」をご覧ください。
- .NETを実現する最初の実装が.NET Frameworkだった?
サーバー側のアプリをビルドする際にサポートされる .NET 実装は、次の 2 つです。
実装 | 含まれているバージョン |
---|---|
.NET | .NET Core 1.0 から 3.1、.NET 5、およびそれ以降のバージョンの .NET。 |
.NET Framework | .NET Framework 1.0 から 4.8 |
- .NETを実現する最初の実装が.NET Frameworkだった
- .NET(.NET Core)も.NET Frameworkも.NETの実装

.NET
さまざまな種類のアプリケーションをビルドするためのfツール、プログラミング言語、およびライブラリで構成される開発者向けプラットフォーム
ASP.NET
.NETにおけるWebアプリケーション開発のためのフレームワーク
.NET Frameworkの時代から存在しており、.NET Core登場以降のASP.NETは特にASP.NET Coreとして区別される
.NET Framework
2002年に登場したWindowsプラットフォームのためのアプリケーション開発・実行環境です。かつては.NETといえばこの.NET Frameworkを指し、現在もWindowsアプリケーションや古いWebアプリケーションを動作させるために使われている。
.NET Core
2016年にMonoなどの成果を取り込んでオープンソース化とマルチプラットフォーム化を行ってリリースされた新しいアプリケーション開発・実行環境。NET Coreはバージョン3.1までリリースされ、次のバージョンに相当する.NET 5では、Coreの語が名称に含まれなくなった。
.NET 数字
.NET Core 3.1より後の.NET Coreのリリース。

図にしてみた

追加