.NET

.NET Foundationが開発したソフトウェアフレームワーク From Wikipedia, the free encyclopedia

.NET(ドットネット)は、マイクロソフトを中心に開発されてきたアプリケーション開発基盤の総称である。C#F#などのプログラミング言語共通言語ランタイム(CLR)、標準ライブラリ開発ツール群を含み、単一の製品や単一の言語を指す名称ではない。このため、「.NET」という語は文脈によって異なる意味で用いられることがある。

最新評価版
ウィキデータを編集
リリース候補版
10.0.0-rc.2[1] / 2025年10月14日 (4か月前)
長期サポート, 安定版
10.0.4[2] / 2026年3月10日 (3日前)
プログラミング
言語
C++およびC#
概要 開発元, 最新評価版 ...
.NET
開発元 .NET Foundation
最新評価版
ウィキデータを編集
リリース候補版
10.0.0-rc.2[1] / 2025年10月14日 (4か月前)
長期サポート, 安定版
10.0.4[2] / 2026年3月10日 (3日前)
リポジトリ ウィキデータを編集
プログラミング
言語
C++およびC#
対応OS
プラットフォーム x86, x64, ARM32, ARM64, ppc64le, s390x
前身 .NET Framework, Xamarin, Mono
後継 現行
サポート状況 サポート中です。
種別 開発支援、開発フレームワーク、オープンソースソフトウェア(?)
ライセンス MIT License[4]
公式サイト dotnet.microsoft.com ウィキデータを編集
テンプレートを表示
閉じる

現在の.NETは、旧来は .NET Core として提供されていた、FOSSとして開発されているクロスプラットフォーム対応のソフトウェアフレームワークであり[5]WindowsLinuxmacOSなど複数のオペレーティングシステム上で動作する。.NET 5以降では、従来の.NET FrameworkおよびXamarin/Monoで提供されてきた機能が統合され、これらの後継として位置づけられている[6]

構成

.NETの主な構成要素として、共通言語ランタイム(CLR)、標準ライブラリ、プログラミング言語、開発ツール群が挙げられる。

共通言語ランタイム(CLR)は、.NETにおけるプログラムの実行環境であり、複数のプログラミング言語で記述されたアプリケーションを共通に実行する役割を担う。

標準ライブラリは、.NETで利用可能な型やクラスの集合であり、入出力処理、コレクション、文字列操作、ネットワーク通信など、アプリケーション開発に必要な基本的な機能を提供する。

.NETでは、複数のプログラミング言語がCLRおよび標準ライブラリを共有する形で利用される。公式にサポートされているプログラミング言語としては、C#F#Visual Basic .NETがある[7]。これらの言語は、それぞれ異なる記述スタイルを持ちながら、同一の実行環境上で動作する。

また、.NETには、これらの構成要素を用いたアプリケーション開発を支援するための開発ツール群が含まれる。これには、ソフトウェア開発キット(SDK)やコマンドラインツール、統合開発環境(IDE)向けの支援機能などが含まれる。

これらの要素は相互に連携し、Webアプリケーションコンソールアプリケーションデスクトップアプリケーションなど、さまざまな種類のアプリケーションの開発に利用されている。

実装

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

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

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

ランタイム

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

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

Windows系UI専用ライブラリ

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

バージョン

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

サポート期限

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

脚注

外部リンク

Related Articles

Wikiwand AI