質問

Microsoft .NET FRAMEWORKって、結局何ができて、何が便利なのか、わかりやすく説明していただけないでしょうか?
Microsoftのホームページを見たりもしましたが、結局何なのかがわかりません。
何かのシステムのセールスポイントとして
「Microsoft .NETに対応したシステムです」
と書かれていたりもしますが、対応してると何が良いのでしょうか?

仕事で毎日メールやグループウェアは使っている。
程度の人にもわかるかなり噛み砕いた具体的な解説でお願い致します。

通報する

回答 (2件)

まず、プログラミングはある程度
他人が作ったものを使いまわすことをします

たとえば、会社のシステムを作らなきゃいけないのに
わざわざ「平方根を求める」程度のことを毎回自分で組むわけには行かないでしょ?

で、これらの機能を別なファイル(これをライブラリという)にしておいて、
みんなでそれを共有し
使うときにそのファイルを読み込む

ただし、そのプログラムを使う際に共有しているファイルも必要ですが。

で、これの集合がランタイムです

また#1さんがいわれているとおり、
今まで、それらは各言語によってバラバラなものが用意されていました。

.NET Frameworkで、機能を拡張、さらに各機能の名前を統一したりして
.NETに対応したすべての言語が同じものを使って
プログラムを組めるようになります。
#この流れの関係上、VBはかなりの変更を強いられました
(→開発側の利点)

同じものを基にしているから多言語への変換も可能で、
さらに(今できるのかは知らないけど)他の言語と組み合わせて組むこともできます。

さて、これらの言語で書いたプログラムソースは
中間コードというものに変換できます

ユーザー側はこの中間コードを実行すると
JITコンパイラというものによって
その環境に最適なアプリケーションが作成されます
(→Javaとの違い)

で、この.NET FrameworkをUNIX/LINUXでも使えるようにしてしまえば
.NET Frameworkを利用して組まれたアプリケーションが
Windows/MacOS/Linux等でも
その環境に最適な状態で使える・・・
(→利用者側の利点。
今までWindowsでしか使えなかったものが他のOSでも!またこの点は開発費の軽減にもなる!)

というわけでそのプロジェクトがこちら↓

DotGNU
http://download.freedom.biz/dotgnu/

Mono Project
http://go-mono.com/

この回答へのお礼

ありがとうございました。

一言で言うならば、開発者がコレまで以上に効率よくソフトウェアの開発を行えるための環境のことです。

ソフトウェア利用者側にとっては、あまりメリットは無いかもしれません。

これまでは、Webブラウザを使ったソフトなどを作るのには、いろいろと技術的な知識を駆使する必要がありましたが、.NET Frameworkを利用すると、そういった開発がかなり簡単に行えるようになります。いわゆる、ソフトウェア開発用の部品集のようなものの最新版といったところでしょうか。

もう1つの開発側のメリットとして、開発に利用するプログラミング言語が異なっていても、.NET Frameworkに対応した言語であれば、いずれも同じ部品を利用するために言語間の違いが少なくなり、「私はこの言語しか使えない」といった言語の壁が低くなるというような利点もあります。

もっと他にもいろいろあるのですが、とりあえずは開発者向けのものであり、一般に利用する人にとっては大革新でも何でもないかもしれません。

この回答へのお礼

ありがとうございました。

このQ&Aは役に立ちましたか?5 件

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

新しく質問する

注目の記事

おしトピアプリ登場記念!コメントで最大1万円分のギフト券があたる!

話題のトピックにさくっとコメントできる「おしトピ」にAndroid版アプリに続きiPhoneアプリも登場! どちらかのアプリをダウンロードして指定のオーダーにコメントした方に抽選で最大1万分のアマゾンギフト券をプレゼント! フジテレビ出身のフリーアナウンサー長谷川豊氏の質問にも回答受付中!


新しく質問する

このカテゴリの人気Q&Aランキング

毎日見よう!教えて!gooトゥディ

べんりQ&A特集