.NET Core(ドットネット コア)

.NET Core(ドットネット コア)とは、マイクロソフトが開発した、Windows以外のOSでも動く.NETとして2016年に登場した開発・実行プラットフォームです。従来の.NET FrameworkがWindows専用だったのに対し、.NET CoreはWindows・Mac・Linuxで動作し、オープンソースとして公開されました。バージョン3.1まで提供されたのち、後継の「.NET 5」以降に統合され、現在は単に「.NET」と呼ばれています。

現実世界でいえば、特定の電力会社でしか使えなかった家電を、世界中のコンセントで使えるように作り直したもののようなイメージです。従来の.NET FrameworkはWindowsという「特定の環境」でしか動きませんでしたが、.NET Coreはどの環境でも動くように、一から設計し直されました。

.NET Coreが生まれた背景

かつてのサーバーはWindowsが主流の分野も多くありましたが、クラウド時代になると、Linuxサーバーやコンテナ(Docker)でアプリを動かすことが当たり前になりました。Windows専用の.NET Frameworkではこの流れに対応できないため、マイクロソフトはクロスプラットフォームでオープンソースの.NETをゼロから作り直しました。それが.NET Coreです。

.NET Coreの特徴

  • クロスプラットフォーム
    Windows・Mac・Linuxで動作します。開発はMacで、本番はLinuxサーバーで、といった構成が可能です。
  • オープンソース
    ソースコードがGitHubで公開されており、誰でも中身を確認したり開発に参加したりできます。
  • 高速・軽量
    性能を重視して設計し直され、特にWebアプリ(ASP.NET Core)の処理性能が大幅に向上しました。
  • クラウド・コンテナと好相性
    必要なものだけをまとめて配布できるため、Dockerなどのコンテナ環境で使いやすくなっています。

.NET Framework/.NET Core/.NETの関係

名前 時期 位置づけ
.NET Framework 2002年〜 Windows専用の初代。バージョン4.8で新機能追加は終了
.NET Core 2016年〜2019年
(1.0〜3.1)
クロスプラットフォーム版としてゼロから再設計
.NET(5以降) 2020年〜 .NET Coreの後継。「Core」が取れて名前が統一され、現在の主流に

ややこしいのですが、「.NET 5」以降は実質的に.NET Coreの後継バージョンです。バージョン4が飛ばされているのは、.NET Framework 4.xとの混同を避けるためです。現在「.NET Core」という名前を見かけたら、「今の.NETのご先祖様」と理解すればOKです。

.NET Coreを使うときの注意点

.NET Core 3.1以前はすでにサポートが終了しています。これから開発を始める場合や既存アプリを更新する場合は、サポート中の新しい.NET(LTS版など)を選びましょう。また、.NET Framework専用の古いライブラリや技術(Web Formsなど)は.NET Core系に移行できないものもあるため、移行時には確認が必要です。

あわせて知っておきたい用語

  • .NET
    現在の名称。.NET Coreの流れを受け継いだプラットフォームです。
  • .NET Framework
    Windows専用の初代.NET。現在は保守のみ行われています。
  • オープンソース
    ソースコードが公開され、誰でも利用・改良できるソフトウェアの形態です。
  • コンテナ
    アプリを動作環境ごとまとめて持ち運ぶ技術。.NET Coreと相性抜群です。
  • ASP.NET Core
    .NET Core系のWebアプリ開発フレームワークです。

コメント

タイトルとURLをコピーしました