Microsoft .NET Frameworkとは何ですか?またそれが私のPCにインストールされているのはなぜですか?
Windowsを非常に長い間使用してきた場合は、おそらくMicrosoftの.NETを聞いたことがあるでしょう。アプリケーションからインストールを求められたか、インストールされているプログラムのリストでそれに気付いたためです。あなたが開発者でない限り、あなたはそれを利用するために多くの知識を必要としません。あなたはそれを動かすのに必要なだけです。しかし、私たちは物事を知るのが好きなので、.NETとは何か、なぜ多くのアプリケーションがそれを必要としているのかを探りながら、一緒に参加しましょう。.
説明されている.NET Framework
「.NET Framework」という名前自体は、ちょっとした誤称です。 A 枠組み (プログラミング用語で)実際にはアプリケーションプログラミングインターフェイス(API)のコレクションとアプリケーションの開発時に開発者が呼び出すことができるコードの共有ライブラリであるため、ゼロからコードを書く必要はありません。 .NET Frameworkでは、その共有コードのライブラリはFramework Class Library(FCL)と呼ばれます。共有ライブラリ内のコードは、あらゆる種類の機能を実行できます。たとえば、開発者がネットワーク上の別のIPアドレスにpingを実行できるようにするためにアプリケーションが必要だったとします。そのコードを自分で書いてからpingの結果が何を意味するのかを解釈しなければならないことをすべて書く代わりに、その機能を実行するライブラリからコードを使うことができます。.
それはほんの一例です。 .NET Frameworkには、何万もの共有コードが含まれています。この共有コードは、アプリケーションが共通の機能を実行する必要があるたびに開発者がやり直す必要がないため、開発者の生活をはるかに簡単にします。代わりに、彼らは自分たちのアプリケーションに固有のコードとそれをすべて結び付けるユーザーインターフェースに集中することができます。このように共有コードのフレームワークを使用すると、アプリケーション間で標準を提供するのにも役立ちます。他の開発者は、プログラムがより簡単に実行していることを理解でき、アプリケーションのユーザーは、[開く]ダイアログボックスと[名前を付けて保存]ダイアログボックスが異なるアプリケーションで同じように機能することを期待できます。.
それで、なぜその名前は誤称なのか?
共有コードのフレームワークとしての機能に加えて、.NETは 実行時環境 アプリケーション用ランタイム環境は、アプリケーションが実行される仮想マシンのようなサンドボックスを提供します。多くの開発プラットフォームは同じ種類のものを提供します。たとえば、JavaとRuby on Railsはどちらも独自のランタイム環境を提供します。 .NETの世界では、ランタイム環境は共通言語ランタイム(CLR)と呼ばれています。ユーザーがアプリケーションを実行すると、そのアプリケーションのコードは実行時に実際にはマシンコードにコンパイルされてから実行されます。 CLRは、メモリやプロセッサスレッドの管理、プログラムの例外処理、セキュリティ管理など、その他のサービスも提供します。ランタイム環境は、実際にはアプリケーションが実行されている実際のハードウェアからアプリケーションを抽象化する方法です。.
アプリケーションをランタイム環境内で実行することには、いくつかの利点があります。最大のものは移植性です。開発者は、C#、C ++、F#、Visual Basic、その他数十のその他のお気に入りを含む、いくつかのサポート言語のいずれかを使用してコードを書くことができます。そのコードは、.NETがサポートされている任意のハードウェアで実行できます。このプラットフォームは表面上はWindowsベースのPC以外のハードウェアをサポートするように設計されていましたが、その独自の性質により主にWindowsアプリケーションに使用されていました。.
マイクロソフトはこれを解決するために他の.NETの実装を作成しました。 Monoは、.NETアプリケーションと他のプラットフォーム、特にLinuxの間の互換性を提供するように設計された無料のオープンソースプロジェクトです。 .NET Coreの実装は、軽量でモジュール式のアプリケーションを複数のプラットフォームに提供するように設計された無料のオープンソースフレームワークです。NETCoreは、Mac OS X、Linux、およびWindowsをサポートすることを目的としています。.
あなたが想像できるように、.NETのようなフレームワークは物事の開発面で本当の恩恵になることができます。開発者は自分の好きな言語を使ってコードを書くことができ、フレームワークがサポートされているところならどこでもコードが実行できることを保証できます。ユーザーは、一貫性のあるアプリケーションと、開発者がフレームワークにアクセスできない場合、多くのアプリケーションがまったく開発されない可能性があるという事実から恩恵を受けます。.
.NETはどのように私のシステムに取り込まれますか?
.NET Frameworkにはやや辛い歴史があり、長年にわたって多くのバージョンが見られました。通常、入手可能な最新バージョンの.NETがWindowsの各バージョンのリリースに含まれています。バージョンは後方互換性を保つことを目的としていたため(バージョン3がインストールされている場合はバージョン2用に作成されたアプリケーションが実行される可能性があります)、それでうまくいきませんでした。すべてのアプリケーションが新しいバージョンで動作するわけではありません。特にWindows XPとVistaを実行しているシステムでは、PCに複数の異なるバージョンの.NETがインストールされていることがよくあります。.
.NET Frameworkの特定のバージョンをインストールする方法は、基本的に3つあります。
- お使いのWindowsのバージョンによっては、デフォルトのインストールに含まれている可能性があります。.
- 特定のバージョンを必要とするアプリケーションは、独自のインストール中にそれをインストールする可能性があります。.
- 特定のバージョンの.NET Frameworkを入手してインストールするために、アプリケーションによっては別のダウンロードサイトにアクセスすることさえあります。.
幸いなことに、最近のバージョンのWindowsでは状況が滑らかになっています。 Windows Vistaの時代には、2つの重要なことが起こりました。まず、.NET Framework 3.5がリリースされました。そのバージョンは、バージョン2および3のコンポーネントを含むように書き直されました。以前のバージョンを必要としていたアプリは、バージョン3.5をインストールしただけでも動作するようになりました。次に、.NET FrameworkへのアップグレードがついにWindows Updateを通じて提供され始めました.
これら2つのことを合わせると、開発者は適切なコンポーネントがすでにインストールされているユーザーにほとんど依存することができ、ユーザーに追加のインストールを実行するよう要求する必要がなくなりました。.
Windows 8が登場したとき、新しい、完全に再設計された.NET Frameworkバージョン4が付属していました。バージョン4(およびそれ以降)には、旧バージョンとの下位互換性はありません。同じPC上でバージョン3.5と並行して実行できるように設計されています。バージョン3.5以下で作成されたアプリにはバージョン3.5がインストールされている必要があり、バージョン4以上で作成されたアプリはバージョン4がインストールされている必要があります。良いニュースは、ユーザーとしてのあなたはもうこれらのインストールについて心配する必要はもうないということです。 Windowsはほとんどすべてあなたのためにそれを処理します.
Windows 8とWindows 10には、バージョン3.5と4が含まれています(現在のバージョンは現在4.6.1です)。これらは初回必要時にインストールされるため、これらのバージョンのいずれかを必要とするアプリを初めてインストールすると、Windowsによって自動的に追加されます。 Windowsのオプション機能にアクセスして、必要に応じて実際にそれらをWindowsに自分で追加することができます。バージョン3.5とバージョン4.6を別々に追加するためのオプションがあります。.
とは言っても、アプリケーションを開発しているのでなければ、自分でWindowsインストールにそれらを追加する本当の理由はありません。利用可能なバージョンのいずれかを必要とするアプリを初めてインストールすると、Windowsは裏で追加します。.
.NETに問題がある場合はどうすればよいですか?
最新バージョンのWindowsでは、.NET自体の問題に遭遇することはおそらくないでしょう。必要なバージョンは両方ともWindowsに含まれており、必要に応じてインストールされるため、アプリのインストールは非常にシームレスです。古いバージョンのWindows(XPやVistaだと思います)では、物事を動かすために.NETのさまざまなバージョンをアンインストールして再インストールしなければならないことがよくありました。また、それらを必要とするアプリケーションに適切なバージョンの.NETがインストールされていることを確認するために、問題を回避する必要がありました。今、Windowsはあなたのためにそのものを処理します.
それでも、.NETフレームワークに関連していると思われる問題がある場合は、いくつかのステップを踏むことができます。.
まず、Windowsに最新のアップデートがすべて含まれていることを確認してください。 .NET Frameworkのアップデートが入手可能であれば、これで問題が解決する可能性があります。コンピュータから.NET Frameworkのバージョンを削除してから再度追加することもできます。その方法については、Windowsの機能を追加することに関する記事を投稿してください。上記の手順のいずれもうまくいかない場合は、Windowsの破損したシステムファイルをスキャンしてみてください。それは時間がかからず、それは破損しているかなくなってしまったシステムファイルを復元することができます。それは常に一撃の価値がある.
それでもうまくいかない場合は、Microsoftの.NET Framework Repair Toolをダウンロードして実行してください。このツールは、.NET Frameworkの現在のすべてのバージョンをサポートしています。それはあなたが.NETへのセットアップやアップデートに関する一般的な問題のトラブルシューティングを助け、あなたが持っているどんな問題でも自動的に修復することができるかもしれません.
そして、あなたはそれを持っています。それはあなたが.NET Frameworkについて知りたいと思った以上のものかもしれませんが、ちょっと - それが次回パーティーに登場したとき、あなたはすべてのあなたの友人を感動させることができます.