米マイクロソフトが2001年に発表した、XMLベースのWebサービスやWebアプリケーションを開発・稼働させるためのソフトウエア基盤。「ドットネット・フレームワーク」と発音する。同社が考案した分散アプリケーション・アーキテクチャ「Microsoft .NET」の中核となる。.NET Frameworkを導入した環境で動作するアプリケーションを、「.NETアプリケーション」と呼ぶ。

 .NET Frameworkは、主に二つの機能を提供する。一つは、「CLR(共通言語ランタイム)」と呼ぶプログラム実行環境。「Visual Basic(VB)」、「Visual C#」、「Visual C++(VC)」といったマイクロソフト製の開発言語で記述したプログラムを、いったん独自の中間言語「MSIL(マイクロソフト中間言語)」に変換してから実行する。メモリー管理やセキュリティ管理の機能はCLRが提供する。この仕組みにより、異なる開発言語を組み合わせて一つのアプリケーションを開発するのが容易になる。

 マイクロソフト以外のベンダーも .NET Frameworkの仕組みにのっとった開発言語/ツールを提供できる。例えば、富士通はCOBOL開発ツールの「NetCOBOL for .NET」を提供している。

 Webサーバー用のスクリプト実行機構「ASP.NET」も、CLRの機能を利用して動く。ASP.NETは、ASP(アクティブ・サーバー・ページズ)の後継に相当し、.NET FrameworkとWebサーバー・ソフト「IIS」を組み合わせた環境で利用する。インタプリタ言語だったASPとは異なり、ASP.NETはスクリプトをMSILに変換後、さらに実行コードにコンパイルしてから実行する。一度コンパイルしたスクリプトの実行コードはキャッシングされるので、ASPよりも実行性能が向上する。

 .NET Frameworkが提供する、もう一つの機能は、クラス・ライブラリ群。従来はVBやVCといった開発言語ごとに提供していたライブラリを一本化し、開発の生産性を高めた。Webアプリケーション向けとしては、セッション管理やWebサービスの呼び出しプロトコル「SOAP」を使った通信、Webサービスのインタフェースを定義する「WSDL(Webサービス記述言語)データ」の自動生成などの機能を持つクラス・ライブラリが含まれる。

 「VB 6」など、既存の開発ツールで開発したプログラムは、最新の開発ツール群「Visual Studio .NET」を使えば、大きな手直しなく、 .NET Frameworkの機能を利用できる。「Microsoft Office XP」に含まれるオフィス・ソフトから .NET Frameworkの機能を利用することも可能。Excelのファイルからネットワーク経由でWebサービスを呼び出す仕組みなどを簡単に構築できる。

(福田)