| 開発者 | .NET Foundationとオープンソース コミュニティ |
|---|---|
| 初回リリース | 2016年6月27日 |
| 安定版リリース | 9.0.0 [1]
/ 2024年11月12日 |
| プレビューリリース | 9.0.0-rc.2 [2]
/ 2024年10月8日 |
| リポジトリ |
|
| 書かれた | C++、C# |
| オペレーティング·システム | クロスプラットフォーム: Windows、Linux、macOS、Android、iOS |
| プラットフォーム | IA-32、x86-64、ARM |
| 前任者 | .NET フレームワーク |
| タイプ | ソフトウェアフレームワーク |
| ライセンス | マサチューセッツ工科大学[3] |
| Webサイト | マイクロソフト |
.NETプラットフォーム(「ドットネット」と発音)は、Windows、Linux、macOSオペレーティングシステム用の無料かつオープンソースの管理されたコンピュータソフトウェアフレームワークです。[4]このプロジェクトは主にMicrosoftの従業員によって.NET Foundationを通じて開発されており、MITライセンスの下でリリースされています。[3]
.NET プラットフォームの新しいバージョンは、通常 11 月に毎年リリースされます。.NET の最新バージョンは .NET 9 で、2024 年 11 月にリリースされます。一方、現在の長期サポート (LTS) バージョンは .NET 8 で、2023 年 11 月にリリースされ、2026 年 11 月まで更新が予定されています。
歴史
1990 年代後半、Microsoft はマネージド コードランタイムとプログラミング言語 ( C# ) の開発を開始し、これらをまとめて「.NET プラットフォーム」の一部として宣伝しました。コア ランタイムとソフトウェア ライブラリは.NET Frameworkを構成します。
.NETプラットフォームの中心となるのは、言語間の継承やデバッグなどの重要な機能を備えたWebサービスを構築および実行するための、生産性の高い多言語開発および実行環境である.NET Frameworkです。[5]
2000 年のProfessional Developers Conferenceで C# 言語が発表され、そのソフトウェアのプレビューが利用可能になってから間もなく、Microsoft はECMAを通じてCommon Language Infrastructureと名付けた標準化の取り組みを開始しました。その間、 同社は独自の実装を独自のクローズド ソース ソフトウェアとして開発およびサポートし続けました。
2014年11月12日、マイクロソフトは、 .NET Frameworkのオープンソースでクロスプラットフォームな後継[ 6]である.NET Coreを発表し、.NET Core CoreCLR実装のソースコード、.NET Coreの「ライブラリスタック全体」[8]のソースをリリースし、 .NET Foundationの管理下で従来の(「バザール」のような)オープンソース開発モデルを採用することを発表しました。ミゲル・デ・イカザは、 .NET Coreを「クラスライブラリの簡易版に基づいた.NETの再設計バージョン」と表現し[9]、マイクロソフトのイモ・ランドワースは、.NET Coreが「将来のすべての.NETプラットフォームの基盤」になると説明しました。発表時点では、.NET Coreプロジェクトの最初のリリースには、ライブラリのソースコードのサブセットが組み込まれており、マイクロソフトの既存の.NETリファレンスソースがMs -RSLの制限から解放されて再ライセンスされたのと一致していました。ランドワースは、以前選択された共有ライセンスの欠点を認め、オープンソース・イニシアティブ(OSI)承認ライセンスの基準を満たしていなかったため、コードネーム「Rotor 」がコミュニティ開発のオープンソース・プロジェクトとして「非現実的」になったと説明した。[10] [11] [12]
.NET Core 1.0は、2016年6月27日にリリースされました。[13] Microsoft Visual Studio 2015 Update 3とともに、.NET Core開発が可能になりました。[14] .NET Core 1.0.4と.NET Core 1.1.1は、2017年3月7日に.NET Core Tools 1.0とVisual Studio 2017とともにリリースされました。[15]
.NET Core 2.0は、Visual Studio 2017 15.3、ASP.NET Core 2.0、Entity Framework Core 2.0とともに2017年8月14日にリリースされました。[16] .NET Core 2.1は2018年5月30日にリリースされました。[17] .NET Core 2.2は2018年12月4日にリリースされました。[18]
.NET Core 3は2019年9月23日にリリースされました。[19] .NET Core 3では、Windowsデスクトップアプリケーション開発のサポートが追加され[20]、基本ライブラリ全体でパフォーマンスが大幅に向上しました。
2020年11月、マイクロソフトは.NET 5.0をリリースした。[21]「Core」ブランドは廃止され、バージョン4.0はスキップされた。これは、2010年以降のすべての重要な(バグ修正以外の)リリースで最新リリースがすべて4.xバージョン管理を使用していた.NET Frameworkとの融合を避けるためである。
これは、.NET Framework に関連する特許に関する懸念に対処します[引用が必要]。
マイクロソフトは2021年11月に.NET 6.0をリリースし、[22] 2022年11月に.NET 7.0をリリースし、[23] 2023年11月に.NET 8.0をリリースし、[24] 2024年11月に.NET 9.0をリリースしました。[25]
Alpine Linuxは主にmusl libcをサポートし使用しており[32]、. NET Core 2.1以降でサポートされています。[33]
Windows Arm64は.NET 5以降ネイティブにサポートされています。以前は、ARM上の.NETはx86アーキテクチャ用にコンパイルされ、ARMエミュレーションレイヤーを介して実行されるアプリケーションを意味していました。[31]
言語サポート

.NETはC#とF#(および3.1以降のC++/CLI。Windowsでのみ有効)を完全にサポートし、 Visual Basic .NET(.NET Core 5.0.100-preview.4のバージョン15.5、および古い.NET Coreでサポートされているいくつかの古いバージョン)をサポートします。[34]
VB.NETは.NET上でコンパイルされ実行されますが、.NET Core 3.1では別個のVisual Basic Runtimeは実装されていません。マイクロソフトは当初、.NET Core 3にVisual Basic Runtimeが含まれると発表しましたが、2年後にそのようなサポートのタイムラインは.NET 5に更新されました。[35] [36]
建築
.NET は、 ASP.NET Core Web アプリ、コマンドライン/コンソール アプリ、ライブラリ、ユニバーサル Windows プラットフォーム アプリというクロスプラットフォームシナリオをサポートしています。.NET Core 3.0 より前は、Windows 上のデスクトップ ソフトウェアの標準GUIをレンダリングするWindows フォームやWindows Presentation Foundation (WPF)は実装されていませんでした。[37]ただし、.NET Core 3 以降では、ユニバーサル Windows プラットフォーム(UWP)とともに実装が開始されました。[38]また、 GTKウィジェット ツールキットのGTK#言語バインディングを使用して .NET を使用して、クロスプラットフォームのグラフィカル アプリケーションを作成することもできます。
.NETはNuGetパッケージの使用をサポートしています。Windows Updateを使用してサービスされる.NET Frameworkとは異なり、.NETは更新プログラムの受信にパッケージマネージャーに依存していました。 [37]ただし、2020年12月以降、.NETの更新プログラムはWindows Update経由でも配信されるようになりました。[39]
.NETの2つの主要コンポーネントはCoreCLRとCoreFXであり、これらは.NET Frameworkの共通言語インフラストラクチャ(CLI)実装の共通言語ランタイム(CLR)とフレームワーククラスライブラリ(FCL)に相当します。[40]
CLIの仮想実行システム(VES)の実装として、CoreCLRはCLIプログラムの管理された実行のための完全なランタイムおよび仮想マシンであり、RyuJITと呼ばれるジャストインタイムコンパイラが含まれています。[41] [a] .NET Coreには、 AOTコンパイルされたネイティブバイナリに統合されるように最適化された.NETネイティブランタイムであるCoreRTも含まれています。[43]
CLIの標準ライブラリの実装として、[44] CoreFXは.NET Framework APIのサブセットを共有しますが、.NET Frameworkの一部ではない独自のAPIも付属しています。[37] UWPには.NETライブラリのバリアントが使用されます。[45]
.NETコマンドラインインターフェースは、オペレーティングシステムの実行エントリポイントを提供し、コンパイルやパッケージ管理などの開発者向けサービスも提供します。[46]

.NET マウイ
.NETマルチプラットフォームアプリUI(.NET MAUI、.NET 6で導入)は、C#と拡張アプリケーションマークアップ言語(XAML)を使用してネイティブモバイルアプリとデスクトップアプリを作成するためのクロスプラットフォームフレームワークであり、[47] AndroidとiOSもサポートしています。
マスコット

.NETの公式コミュニティマスコットは.NETボット(「dotnet bot」または「dotnet-bot」と表記)です。dotnetボットは、.NETソースコードがオープンソース化されたときに、最初のチェックインのためのプレースホルダー開発者として機能しました。[48]それ以来、公式マスコットとして使用されています。
注記
- ^ 接頭辞「リュウ」は日本語で「ドラゴン」を意味し、書籍「コンパイラ:原理、テクニック、ツール」(初期の表紙デザインからドラゴンブックとして知られている)や、ビデオゲーム「ストリートファイター」のキャラクターへの言及である。[42]
参考文献
- ^ 「.NET 9.0 をダウンロード」。2024 年11 月 12 日閲覧。
- ^ 「.NET 9.0 をダウンロード」 。2024年10 月 8 日閲覧。
- ^ ab "core/LICENSE.TXT". GitHub . 2018年6月4日閲覧。
- ^ 「.NET Core をダウンロード」。microsoft.com。Microsoft。2017年10月 31日閲覧。
- ^ 「Microsoft、Web サービス構築用の最初の .NET プラットフォーム開発者ツールを提供」。2000 年 7 月 11 日。2023 年11 月 5 日閲覧。
- ^ 「.NET Core は .NET の未来です」。2019 年 5 月 6 日。
- ^ 「.NET Framework は終了 – .NET 5 万歳」。2019 年 5 月 7 日。
- ^ 「.NET 開発会社が完璧な後押しとなる理由 | Pangea.ai」www.pangea.ai 。 2022 年12 月 8 日閲覧。
- ^ デ・イカザ、ミゲル。 「Microsoft オープンソース .NET および Mono」。Miguel de Icaza の個人ブログ。2014 年11 月 16 日に取得。
- ^ Landwerth, Immo (2014 年 11 月 12 日)。「.NET Core はオープン ソースです」。.NET Framework ブログ。Microsoft。2014年12 月 30 日閲覧。
- ^ "dotnet/corefx". GitHub . 2014年11月16日閲覧。
- ^ 「Microsoft/referencesource」。GitHub 。 2014年11月16日閲覧。
- ^ Bright, Peter (2016 年 6 月 27 日)。「.NET Core 1.0 がリリースされ、Red Hat が公式にサポートするようになりました」。Ars Technica。Condé Nast。
- ^ Foley, Mary Jo (2016 年 6 月 27 日)。「Microsoft が SQL Server と .NET Core を搭載 した Red Hat Enterprise Linux の成果物を披露」ZDNet。CBS Interactive。
- ^ 「.NET Core Tools 1.0 の発表 | .NET ブログ」。Blogs.msdn.microsoft.com。2017 年 3 月 7 日。2020年1 月 18 日閲覧。
- ^ ab 「.NET Core 2.0 の発表」。.NET ブログ。Microsoft。2017 年 8 月 14 日。
- ^ ab 「.NET Core 2.1 の発表」。.NET ブログ。Microsoft。2018 年 5 月 30 日。
- ^ ab 「.NET Core 2.2 の発表」。.NET ブログ。Microsoft。2018 年 12 月 4 日。
- ^ 「.NET Core は .NET の未来です」. .NET ブログ2019 年 5 月 6 日 . 2019 年5 月 17 日閲覧。
- ^ 「.NET Core 3.0 の新機能」。.NET ドキュメント。2020年12 月 30 日閲覧。
- ^ 「.NET 5.0 の発表」. .NET ブログ. 2020 年 11 月 10 日. 2020 年11 月 21 日閲覧。
- ^ ab Lander, Richard (2021 年 11 月 8 日). 「.NET 6 を発表 – これまでで最速の .NET」. .NET ブログ. 2022 年5 月 6 日閲覧。
- ^ ab Douglas, Jon (2022 年 11 月 8 日). 「.NET 7 が本日利用可能になりました」. .NET ブログ. 2024 年1 月 13 日閲覧。
- ^ ab Seth, Gaurav (2023 年 11 月 14 日)。「.NET 8 の発表」。.NET ブログ。2024 年1 月 13 日閲覧。
- ^ ab 「.NET 9 の発表」。.NET ブログ。2024 年 11 月 12 日。2024 年11 月 12 日に閲覧。
- ^ 「.NET Core 公式サポート ポリシー」。.NET。Microsoft。
- ^ 「.NET Core 1.0 の発表」。.NET ブログ。Microsoft。2016 年 6 月 27 日。
- ^ 「.NET Core 1.1 の発表」。.NET ブログ。Microsoft。2016 年 11 月 16 日。
- ^ 「.NET Core 3.0 の発表」。.NET ブログ。Microsoft。2019 年 9 月 23 日。
- ^ 「.NET Core 3.1 の発表」。.NET ブログ。Microsoft。2019 年 12 月 3 日。
- ^ ab 「.NET 5.0 の発表」。.NET ブログ。Microsoft。2020 年 11 月 10 日。
- ^ 「Alpine 3.10.0 リリース | Alpine Linux」。alpinelinux.org 。2020年6月9日閲覧。
- ^ "dotnet/core". GitHub . 2020年6月9日閲覧。
- ^ 「.NET Framework はさまざまなプログラミング言語をサポートしています」 。2022年4 月 21 日閲覧。
- ^ 「.NET Core 3.0 の Visual Basic | Visual Basic ブログ」。Blogs.msdn.microsoft.com。2019 年 10 月 12 日。2020年1 月 18 日閲覧。
- ^ 「.NET 5.0 の Visual Basic サポートが計画されています | Visual Basic ブログ」。Blogs.msdn.microsoft.com。2020 年 3 月 11 日。2020年8 月 26 日閲覧。
- ^ abc Carter, Phillip; Knezevic, Zlatko (2016 年 4 月)。「.NET Core – .NET が .NET Core でクロスプラットフォーム化」。MSDNマガジン。Microsoft。
- ^ Lander, Rich ( 2018 年 5 月 7 日)。「.NET Core 3 と Windows デスクトップ アプリケーションのサポート」。MSDN。Microsoft。
- ^ 「.NET Core 2.1、3.1、および .NET 5.0 の更新プログラムが Microsoft Update に登場」. .NET ブログ. 2020 年 12 月 3 日. 2020 年12 月 15 日閲覧。
- ^ 「.NET Framework、.NET Core、.NET Standard、および将来の .NET について理解する」www.c-sharpcorner.com 。 2021 年2 月 1 日閲覧。
- ^ Landwerth, Immo (2015 年 2 月 3 日)。「CoreCLR がオープン ソースになりました」。.NET Framework ブログ。Microsoft。2015年2 月 27 日閲覧。
- ^ 「なぜ RyuJIT なのか? 名前の由来は?」nuWave eSolutions 開発チーム ブログ2014 年 11 月 25 日2016 年6 月 21 日閲覧。
- ^ Ramel, David (2020 年 8 月 31 日). 「Microsoft Survey: Developers Held Back by Lack of 'Native AOT' in .NET Core -」. Visual Studio Magazine . 2020 年 10 月 22 日時点のオリジナルよりアーカイブ。 2021 年2 月 1 日閲覧。
- ^ Landwerth , Immo (2014 年 12 月 4 日)。「.NET Core の紹介」。.NET Framework ブログ。Microsoft。2015年2 月 27 日閲覧。
- ^ 「.NET Native と CoreRT の概要」。GitHub。2016年 4 月 23 日。
- ^ 「CLI 入門」。GitHub。2016年 4 月 23 日。
- ^ 「.NET MAUI とは? - .NET MAUI」。learn.microsoft.com 。2022 年11 月 8 日閲覧。
- ^ Wang, Abel (2020 年 9 月 9 日). What is the dotnet bot? (ポッドキャスト). Microsoft. イベントは 4 秒後に発生します。 2021 年3 月 9 日閲覧。
さらに読む
- Arif, Hammad; Qureshi, Habib (2020)。. NET 5 の導入: 最新のアーキテクチャ、移行のベスト プラクティス、および .NET 5 の新機能を理解する。Packt Publishing。ISBN 978-1800560567。
- Metzgar, Dustin (2018)。. NET Core in Action。Manning Publications。ISBN 978-1617294273。
- Price, Mark J. (2021). C# 10 と .NET 6 – 最新のクロスプラットフォーム開発。Packt Publishing。ISBN 978-1801077361。
- Price, Mark J. (2020)。C # 9 と .NET 5 – 最新のクロスプラットフォーム開発。Packt Publishing。ISBN 978-1800568105。
- Price, Mark J. (2019)。C # 8.0 と .NET Core 3.0 – 最新のクロスプラットフォーム開発。Packt Publishing。ISBN 978-1788478120。
- Price, Mark J. (2017)。C # 7.1 と .NET Core 2.0 – 最新のクロスプラットフォーム開発。Packt Publishing。ISBN 978-1788398077。
- Price, Mark J. (2017)。C # 7 と .NET Core: 最新のクロスプラットフォーム開発。Packt Publishing。ISBN 978-1787129559。
- Price, Mark J. (2016)。C # 6 と .NET Core 1.0: 最新のクロスプラットフォーム開発。Packt Publishing。ISBN 978-1785285691。
- Zimarev, Alexey (2019)。. NET Core による実践的なドメイン駆動設計。Packt Publishing。ISBN 978-1788834094。
外部リンク
- 公式サイト
- GitHub上の .NET
