10
11

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

.NET?Framework?Core?色々あるから整理しよう

Last updated at Posted at 2023-09-04

概要

普段なにげなくUnityでC#を使っていたけれど、.NETとか.NET Frameworkとか、.NET Coreとかの違いをよく分かってなかったな~と思ったので、簡単な歴史や名称の違いを自分用にまとめてみました。

間違っている部分があるかもしれませんが、多めに見ていただけますと幸いです。

.NETとは

2000年6月に掲げたMicrosoft .NETという構想が元になっている。
現在のIoTに近い、様々な情報デバイスをネットワークに接続させて、インターネット経由でつながることを目指すというものであった。

その後、Visual Studio .NETが発表され、これが今の.NETの原型になっている。
現在では、Microsoft .NETという呼称は使われておらず、現在使われている.NET.NET Frameworkの呼称のひとつとなっている。
しかし、後述の内容により、.NET Coreの名称が.NETに変更されたため、非常に分かりづらくなっている。

.NET 4.8(.NET Framework 4.8)と.NET 5.0(旧.NET Core)は似ているが、全く別物である。

.NET Standardとは?

複数の.NET実装で使用できる.NET APIの仕様。

この仕様に従い、.NET Framework.NET CoreXamarin.iOS/Mac/AndroidUWPといった様々な.NET実装でAPIが実装されている。
つまり、すべての.NET実装で実装するべきAPIの一覧のようなもので、
「.NET Standard実装の共通するAPI」+「各.NET実装の固有のAPI」となる。

.NET Frameworkとは?

.NET Frameworkとは、Microsoftが提供するソフトウェア開発フレームワーク。
Windows系のアプリケーションやWebサービスなどを開発することができる。

.NET Frameworkでは、C#、VB、C++、F#など、複数のプログラミング言語による開発が可能。

2.0/3.0/3.5系と4系で独立しているため、4系をインストールしても2.0/3.0/3.5系と共存することが可能。

最新バージョンは4.8で、このバージョンが最終リリースとなる。

.NET Coreとは?

.NET Frameworkの後継としてリリースされた。オープンソース。
マルチプラットフォームに対応しているため、Widnwosのほか、macOS、Linuxでも動作する。

.Net Coreは3.1でリリースを終了し、名称を.NET 5に変更された。
その後、.NET 6....NET 7...と続いていく。

Unityでは?

Unity 2022.3では、API Compatibility Level.NET Frameworkもしくは.NET Standard 2.1から選択できる。

.NET Standard 2.1をサポートしており、これに伴ってC# 8.0を完全にサポートしている。

まとめ

以前は、略称として.NET Framework.NETと呼ばれていました。
その後、.NET Frameworkのメジャーアップデートが終了し、その後継となる.NET Core.NETへと改名されました。
.NETが2つの意味合いをもっているためややこしいですが、今後は1つのフレームワークを指すことになるため少しはシンプルになるでしょうか。

参考

.NET Standard
https://learn.microsoft.com/ja-jp/dotnet/standard/net-standard?tabs=net-standard-1-0
.NET Framework 4.8 と .NET 5.0 は全く違う、両者の扱い方の注意点を解説します。
https://wake-mob.jp/2020/11/02/net-framework-4-8-%e3%81%a8-net-5-0-%e3%81%af%e5%85%a8%e3%81%8f%e9%81%95%e3%81%86%e3%80%81%e4%b8%a1%e8%80%85%e3%81%ae%e6%89%b1%e3%81%84%e6%96%b9%e3%81%ae%e6%b3%a8%e6%84%8f%e7%82%b9%e3%82%92%e8%a7%a3/
.NETとは? 初心者にもわかりやすく解説
https://game-creators.jp/g-job-tenshoku/news_articles/23
.NET Framework とは?歴史やできることを解説
https://www.rstone-jp.com/column/109860/

10
11
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
11

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?