.NET

.NET Foundationが開発したソフトウェアフレームワーク ウィキペディアから

.NET

.NET(ドットネット、旧称 .NET Core)は、.NETを実装したFOSSのクロスプラットフォームマネージソフトウェアフレームワークである[4]。.NET 5以降は、.NET FrameworkおよびXamarin/Monoの機能が統合され、それらの後継にもなっている。[5]

概要 開発元, 最新版 ...
.NET
Thumb
開発元 .NET Foundation
最新版
9.0.0 / 2024年11月12日 (5か月前) (2024-11-12)[1]
リポジトリ
プログラミング
言語
C++およびC#
対応OS
プラットフォーム x86, x64, ARM32, ARM64
前身 .NET Framework, Xamarin, Mono
ライセンス MIT License[3]
公式サイト dotnet.microsoft.com 
テンプレートを表示
閉じる

.NETの実装には.NET FrameworkXamarin/Monoが存在する[6].NET Coreはクロスプラットフォームを特徴としてMicrosoftが開発を主導している.NET実装の1つである[6]WindowsLinuxmacOS等に対応している[7]。.NET Coreの基盤上では以下のタイプ(シナリオ)のアプリケーションを開発できる。

.NET Coreはモジュラーでもあるため、開発者は.NET CoreをアセンブリではなくNuGetパッケージにしてもよい。.NET FrameworkはWindows Updateにより更新されるが、.NET Coreの更新はそのパッケージマネージャに依存する[8][9]

機能

.NET Coreはフレームワークとして、実行環境のような下位レイヤーからUIフレームワークのような上位レイヤーまで様々な機能を提供する。以下は機能の例である。

  • プログラム実行環境(CoreCLRによるマネージコード実行環境)
  • ポータブル実行ファイル(各言語から共通中間言語へのコンパイルが可能にする持ち運べる実行ファイル)
  • 型/クラスライブラリ(標準ライブラリ = 言語仕様以上の型/クラス提供 by CoreCLR & CoreFX)

対応言語

.NET では以下の3つの言語を公式的にサポートしている[10]

実装

.NETは共通言語基盤 (CLI) の元となっている仕様であり、.NET CoreはCLIの実装になっている[11]

.NET CoreのランタイムはCoreCLRである[12]。CoreCLRはガベージコレクタJITコンパイラ(RyuJIT)、プリミティブな型/クラスライブラリからなっている[13][14][注釈 1][注釈 2][15]。またランタイムに必要な型/クラスライブラリに追加して、フレームワークとして規定する型群としてCoreFXが.NET Coreには含まれる[16]。CoreFXはFramework Class Library英語版の一部をフォークしたものである[17]

.NET Coreと.NET FrameworkAPIを一部共有しているが、.NET Coreには.NET Frameworkに存在しない固有のAPIが搭載されている[8]。.NET Coreライブラリの派生物はUWP用に利用されている[18]。.NET Coreのコマンドラインインタフェースは、オペレーティングシステムには実行エントリポイントを、開発者にはコンパイルやパッケージ管理などのサービスを提供する[19]

ランタイム

.NETは複数のランタイムを利用できる。以下は .NET 7 における対応ランタイムである[20][21]

これらは目的に応じて使い分けられる。例えば iOS はAOTコンパイル前提でありMonoランタイムが利用される。

Windows系UI専用ライブラリ

もともと.NET Coreはクロスプラットフォームを前提とするフレームワークであり、.NET Core 3よりも前のバージョンでは、Windowsのデスクトップソフトウェア用の標準GUIを提供するためのWindows FormsWPFが実装されていなかった[8][9]。2018年にマイクロソフトは、デスクトップ技術であるWindows Forms、WPF、UWPを.NET Core 3からサポートすることを公表した[23]。.NET Core 3.0では、Windows版に限りWindows FormsおよびWPFのサポートが提供されるようになった[24]

バージョン

さらに見る バージョン, リリース日 ...
.NET バージョン[25]
バージョン リリース日 長期
サポート
変更内容
.NET Core 1.0 2016-06-27[26]
.NET Core 1.1 2017-03-07[27]
.NET Core 2.0 2017-08-14
.NET Core 2.1 2018-05-30
.NET Core 2.2 2018-12-04
.NET Core 3.0 2019-09-23[28] Build 2018英語版で発表。デスクトップ・人工知能/機械学習IoTアプリケーションの開発をサポートした。
.NET Core 3.1 2019-12-03 Yes
.NET 5 2020-11-10[29] 名前から"Core"が外れた[30]。.NET Core 4はスキップされ、.NET 5になった。これは.NET 5が.NET Framework 4.8の後継でもあることから、.NET Framework 4.xとの混同を防ぐ目的を含んでいる[31]
.NET 6 2021-11-08[32] Yes
.NET 7 2022-11-08 Windows 8以前がサポート対象外となった。[33]
.NET 8 2023-11-14 Yes
.NET 9 2024-11-12
閉じる

サポート期限

長期サポート版(LTS)はJavaと同じく2年ごとにリリースされているが、Javaのプレミア・サポートが5年、延長サポートがその次の3年[34]と比べて、.NETは3年[25]と短く、長期サポート版を使い続けるには、長期サポート版がリリースされる度に1年以内に乗り換えないといけない。UbuntuRed Hat Enterprise Linuxも.NETの長期サポート版の独自サポートを行っていて[35]、Red Hat Enterprise Linuxのサポート期限は同じく3年だが[36]、Ubuntuは長期サポート版OSのサポート期限(最長12年)までサポートを行う[37]

脚注

外部リンク

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.