.NET(ドットネット)

.NET(ドットネット)とは、マイクロソフトが提供している、アプリケーションを開発・実行するためのプラットフォーム(土台)です。Webアプリ、デスクトップアプリ、スマホアプリ、ゲームなど、さまざまな種類のソフトウェアを、C#やVB.NETといったプログラミング言語で開発できます。

現実世界でいえば、よく整備された工場設備一式のようなものです。工場には工作機械や部品棚、電気や水道といった設備がそろっているので、職人は「作りたい製品」に集中できます。.NETにも、プログラムを動かすエンジン(ランタイム)や、よく使う機能を集めた部品集(ライブラリ)、開発を助ける道具がそろっており、開発者はアプリの中身づくりに集中できます。

.NETを構成するおもな要素

  • ランタイム(CLR)
    プログラムを実行するエンジン。メモリの管理やエラー処理などの面倒な仕事を引き受けてくれます。
  • クラスライブラリ
    ファイル操作、通信、データ処理など、よく使う機能があらかじめ部品として用意されています。
  • プログラミング言語
    C#(シーシャープ)を筆頭に、VB.NET、F#などの言語が使えます。どの言語で書いても同じ.NETの仕組みの上で動きます。
  • 開発ツール
    Visual StudioやVisual Studio Codeといった開発環境、ライブラリを管理するNuGetなどが用意されています。

.NET Frameworkと.NET(.NET Core)の違い

「.NET」という言葉は、時代によって指すものが少し変わってきた点に注意が必要です。

  .NET Framework .NET(旧 .NET Core)
登場時期 2002年〜 2016年〜(.NET Coreとして)
動く環境 Windowsのみ Windows・Mac・Linux
現在の位置づけ 新機能の追加は終了(保守のみ) 現在の主流。今後の開発はこちら

もともとはWindows専用の「.NET Framework」が長く使われてきましたが、その後クロスプラットフォーム対応の「.NET Core」が登場し、バージョン5からは名前が単に「.NET」に統一されました(.NET 5、.NET 6…と続きます)。現在、新規開発では新しい「.NET」を使うのが基本です。

.NETで作れるもの

Webアプリ・Web API(ASP.NET Core)、Windowsのデスクトップアプリ(WPF・Windows Forms)、スマホアプリ(.NET MAUI)、ゲーム(Unity。C#で開発)、クラウドで動くサービスなど、幅広い分野をカバーしています。1つの言語(C#)を覚えれば多くの分野に応用できることが、.NETの大きな魅力です。

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

  • C#
    .NETでもっともよく使われるプログラミング言語です。
  • VB.NET
    Visual Basicをもとにした.NET対応言語。業務システムでよく使われてきました。
  • .NET Core
    クロスプラットフォーム対応の.NET。現在の「.NET」の直接の前身です。
  • ランタイム
    プログラムを実行するためのエンジン。.NETではCLRがこれにあたります。
  • NuGet
    .NET用のライブラリ(部品)を入手・管理する仕組みです。

コメント

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