カテゴリから探す
Geekly
コラム
技術・
テクノロジー
職種・
ポジション
Web・
ゲーム
転職準備
転職活動
  1. HOME
  2. Geekly Media
  3. 技術・テクノロジー
  4. 『.NET フレームワーク』を徹底解説!!その特徴からできることまで、分かりやすくご紹介します。
  • 技術・テクノロジー

『.NET フレームワーク』を徹底解説!!その特徴からできることまで、分かりやすくご紹介します。

『.NET フレームワーク』の本来の意味合い(過去の意味合い)と現在の意味合いまでわかりやすく解説。.NET フレームワークの特徴&できることまで徹底解説!難しいIT用語をある程度意味合いが伝わるように変換!知識ゼロから.NET フレームワークの知識、理解、関心が得られ、IT世界の仕組みが見えてきます!

 

.NET フレームワークとは?

 

過去と現在で意味合いが異なる

 

  

『.NET フレームワーク』とは、「Microsoft .NET Framework(マイクロソフト ドットネット フレームワーク)」と言うアプリケーションです。

Microsoft社が提供している開発&実行ができるプラットフォームになります。Windowsのプログラム実行環境などとして推進します。

当時は「Microsoft.NET」と呼ばれていましたが現在では意味が少し異なり、「.NET」をテーマにして専門的な人と対談する場合話が噛み合わないといった状態が現在では発生してるため、過去と現在の.NETを説明します。

簡単に要約すると「Microsoft.NET」 の過去のビジョンが失われ、現在は異なったビジョンになっていることが理由に挙げられます。

XML Webサービスに力を入れていたMicrosoftは経済の流れ乗るために、代わりにRESTスタイルへの力を注ぐ様になったことにより意味合いが変わりました。

過去の呼び名「Microsoft .NET(マイクロソフト ドットネット)」から現在の呼び名「.NET Framework(ドットネット フレームワーク)」に呼び名が変わりました。

結果的に「Microsoft .NET」と「.NET Framework」では意味が異なり「.NET」は「.NET Framework」の略語で現在の意味合いも「.NET Framework」を示しています。

開発&実行環境をアプリケーション経由でサービスを提供するプラットフォームを開発したのがMicrosoftです。

他にも主にXML、ウェブサービス、ウェブアプリケーションなどインターネットのウェブをベースにした環境にも対応しており様々な開発&実行が可能な環境を提供

.NETフレームワークで対応している言語は数多くあり23カ国に対応しています。

 

開発者側とユーザー側

 

 

.NET フレームワークは開発者側とユーザー側で知識や経験、理解度の度合いが大きく関わってきます。つまり、立場が変化するだけで見方、操作性や使用用途も変わってくるのが.NET フレームワークです。

簡単に下記で開発者とユーザー側で説明します。

・開発者側

.NET フレームワークで使用できる開発言語を活用し、アプリケーションの開発ができます。開発で使用した言語以外にも後から対話が可能なため、さまざまなコンピュータ機器やソフトウェアと連携して開発が可能です。

・ユーザー側

.NET フレームワークでの言語開発を行わなくても利用することが可能なため、多くのユーザーは知識や経験、スキルがなくても利用が可能です。

上記のような開発側とユーザー側で.NET フレームワークの認識や知識の有無などが大きく変動します。2つの味方ができる事により、これから話す内容は開発者側の内容を深堀りして解説して行きます。

 

システムの論理的構造

 

共通言語基盤

 

 

.NET フレームワークにおいて主に使用される行動の流れについて解説します。

この行動の中で最も本質をしめているのがCLI(共通中間基盤)です。この意味を簡単に説明すると開発環境で実行環境時の単体言語に依存しないと言う意味です。

Microsoftで主に用いられているのがCLR(共通語ランタイム)と呼ばれている5つの項目です。

・CTS (共通型システム)

定義は様々ありますが、Microsoftが開発した人とネットフレームワークに対応したプログラミング言語でデータを統一するためのシステム。

・CLS (共通言語仕様)

共通言語ランタイムでサポートされている言語機能のサブセットに該当します。CLSはCTSのサブセット。 結果、CTSにもCLSは適用されます。ただし厳しい制限が設けられていない場合に限ります。

・CIL (共通中間言語)

人間が解読可能なプログラミング言語に変換。様々な言語をCIL (共通中間言語)で特定のOSや機種に依存しないプログラミング「マネージドコード(CLRに対応できる形式に変換)」にします

・JIT (ジャストインタイムコンパイラ)

結構環境のOSや機種に依存しない中間コードをプログラム実行する時点の工程で実行可能な言語にソースコードからオブジェクトコードに変換することができるのがJIT (ジャストインタイムコンパイラ)。

・VES (仮想実行システム)

メタデータを活用して動的要素を持つプログラミング言語を生成することができるシステム。CIL (共通中間言語)で読み込みと実行を実現することが可能なシステム。

 

 

構成「CLR」「BCL」「FW」

 

大きく3つで構成

 

 

プログラムを実行するときに用いられるエンジン(動作環境)がCLR (共通言語ランタイム)それと、BCL(基本クラスライブラリ)と、各種ライブラリのFW(フレームワーク)でASP.NETなどが該当しこれらで構成

・CLR (共通言語ランタイム)

いったん、様々な言語をCIL (共通中間言語)で特定のOSや機種に依存しないプログラミング「マネージドコード(CLRに対応できる形式に変換)」にします。変換された言語を実行するのがCLR(共通言語ランタイム)です。CLRは、仮想マシンと言われ中核システムです。

・BCL(基本クラスライブラリ)

.netフレームワークで利用するときに使用可能なのがBCLです。PCLは多くの共通機能をカプセル化するための基本ライブラリです。

・FW(フレームワーク)

単独での意味合いは「構造」の意味合いに当たります。他にも骨組み、枠組み等の解釈ができます。今回はIT業界の意味合いで使われるためWebアプリケーションフレームワークである「ASP.NET」などのフレームワークを示しています。ウェブサービスでの開発や運用を行うために用いられるフレームワークです。

 

「特徴」&「できること」を解説

 

特徴

 

 

JavaやPHPでの開発はできませんがそれ以外の多くのMicrosoft社が開発実行の言語として提供している複数言語での開発ができるのが最大の特徴でもあり魅力です。

特徴の1つでもあるCIL(共通中間言語)で一度結合されます。それにより異なる言語での開発実行ができるのが魅了

 

できること

 

 

Windowsのアプリケーション&WebベースでのサービスやWebアプリケーションなどが可能。HTMLと同じマークアップ言語で同じ様に用いられる「XML」を使うことができます

様々な異なる言語でシステム開発&実行ができ、インターネットを活用したアプリやウェブサービスを作ることができます。

 

今後の.NET フレームワーク

 

.NET フレームワークの未来&将来

  

 

Microsoftは過去のビジョン変更などの柔軟な対応により、現在のIT業界は生き残ることができたと推測できます。

そのため、今後の「.NETフレームワーク」は優れないものをどんどん切り捨て優れたものを取り入れることにより柔軟に対応しIT業界成長していくと予想されます。

 

.NET フレームワークを活用

 

これから活用する人にアドバイス

 

 

様々な言語で開発実行ができる特徴を持つ.NET フレームワークはいわば様々な言語を勉強でき自然と幅広い言語に対応できるスキルが身に付くことがとても魅力的です。

活用する人はその様々な言語のスキルを重ねて使うことができるので幅広い知識が得られます。

使い方によっては開発スピードを高めていくことができるため、開発スピードを上げたい人は試してはどうでしょうか。

 

まとめ

 

 

IT業界はどんどん進化し続けています。それにより様々な言語が生まれ様々な言語で作られるビジネスが溢れかえっています。

一方、言語を理解して適切に使える人材は微量ながらも増えている傾向にあります。ぜひこの機会に興味がある方は参入してみてはどうでしょうか。

Geekly Media
ライター

この記事が気に入ったら
シェアしよう!

  • twitter
  • facebook
0

関連記事

求人数×IT業界での紹介実績数で、納得の転職をサポート。IT業界専門だからこそできる提案力を実感してみてください。