.NET Framework
読み:ドットネット-フレームワーク
外語:.NET Framework
Microsoft
が開発した、アプリケーション動作環境。
目次
概要
環境
機能
特徴
仕様はオープン
オープンの範囲
主要実装
バージョン
一覧表
各版の特徴
.NET Framework 1.0
.NET Framework 1.1
.NET Framework 2.0
.NET Framework 3.0
.NET Framework 3.5
.NET Framework 4
.NET Framework 4.5
概要
環境
Microsoft Windows
やその他
オペレーティングシステム
上で動作するシステムであり、さらにこの上で動作するWebサービスやインターフェイスを提供する。
.NETは提供される環境の総称である。その根幹は「
共通言語基盤
」(CLI)であり、ISO/IEC 23271として国際標準化されている。
この標準のMicrosoftによるデスクトップ用実装が
共通言語ランタイム
(CLR)であり、CLRに様々なライブラリを付加したものが.NET Frameworkであると言える。
機能
具体的には、次の柱からなる。
共通言語ランタイム
(CLR)
Webソフトウェアに対するクラスライブラリ
CLRにより、特定のハードウェアに依存せずにソフトウェアを稼働させ、更にメモリー管理やセキュリティ管理などの機能を提供する。
CLRは、
Java
における
仮想計算機
「
JVM
」と同様のものであり、
C#
や
C++
、
Visual Basic
、
Pascal
などの
プログラミング言語
で作ったプログラムを
共通中間言語
(Common Intermediate Language、CIL)と呼ばれる
中間言語
にコンパイルし、このバイナリを動作させるシステムである。
特徴
仕様はオープン
Javaとは違い、仕様の一部はオープンであり、実行環境である
共通言語基盤
(以下、CLI)は、2001(平成13)年12月に情報通信の標準化団体ECMAによりEMCA-335として標準化仕様として承認され、同時にMicrosoftが.NET Framework用に開発したC#言語もECMA-334として承認された。
CLIは更にISO/IEC 23271としてISO標準化され、日本でもこのISOの邦訳がJIS X 3016として制定されている。
オープンの範囲
CLIは確かにECMA標準であり、ISO標準であり、JIS規格であり、
オープンソース
であるが、かといって、.NET Framework全体がオープンであるかというと、そうではない。
.NET Frameworkのうち、実用的な次の機能は非公開である。
Windowsアプリケーション用クラスライブラリであるWindows Form
WebアプリケーションやXML Webサービスを提供するASP .NET
データベース接続を行なうADO .NET
つまり、公開された仕様で作成可能なのはコンソールプログラムくらい、ということになる。
主要実装
CLIは公開仕様であるので、これに準じたMicrosoft以外による実装もある。
また、広い世の中には色々な人がいるもので、有志によりLinux用として、仕様が非公開のWindows FormやASP .NET、ADO .NETまでも含めた.NET Framework互換環境を独自に実装しようとするプロジェクトも勃興している。
Microsoft .NET Framework ‐ 本項で説明する、Microsoftによるデスクトップ用実装
Microsoft .NET Compact Framework ‐ Microsoftによるモバイル機器用実装
シェアードソースCLI ‐ Microsoftによるサンプルの実装
Mono ‐ Linux用のオープンソース実装の一つ
DotGNU Portable.NET ‐ オープンソース実装の一つ
バージョン
一覧表
.NET Frameworkには複数のバージョンが存在する。Windowsのバージョンにより、標準インストールされているバージョンが異なり、またインストール可能なバージョンも異なる。
.NET Frameworkの主要なバージョンは次のとおり。
.NET Framework 1.0
1.0.3705.0 (Service Pack未適用)
1.0.3705.209 (Service Pack 1)
1.0.3705.288 (Service Pack 2)
1.0.3705.6018 (Service Pack 3)
.NET Framework 1.1
1.1.4322.573 (Service Pack未適用)
1.1.4322.2032 (Service Pack 1)
.NET Framework 2.0
2.0.50727.42 (Service Pack未適用)
.NET Framework 3.0
.NET Framework 3.5
.NET Framework 3.5.1
.NET Framework 4
.NET Framework 4.5
.NET Framework 4.5.1
.NET Framework 4.5.2
それぞれに、サービスパックなどが用意されているため、様々なバージョン違いがある。
各版の特徴
.NET Framework 1.0
.NET Frameworkの最初の版。
Windows 98
以降と、Microsoft Windows NT 4.0以降用に提供された。
既にサポートは終了している。
.NET Framework 1.1
初の更新版であり、本格的に普及した最初の.NET Frameworkである。
2013(平成25)年10月8日をもって延長サポート期間が終了した。
.NET Framework 2.0
初のメジャーバージョンアップ版。様々な拡張、
仕様変更
等が行なわれている。
64ビット環境(
IA-64
や、
x64
)に対応した最初の版である。
2016(平成28)年4月12日をもってサポート期間が終了する予定。
.NET Framework 3.0
元々は
Windows Vista
用の新APIとして、開発コードネーム「
WinFX
」として開発されていたもの。その後、正式名称が.NET Framework 3.0と決定した。
基本的な基盤仕様は.NET Framework 2.0から変更がなく、CLRのバージョンは2.0のまま4つの新技術(サブシステム)を追加したものとなっている。
Windows Workflow Foundation (WF)
Windows Communication Foundation
(WCF、非同期通信機能、開発コードネーム
Indigo
)
Windows Presentation Foundation
(WPF、画面描画機構、開発コードネーム
Avalon
)
Windows CardSpace (WCS)
3.0は、コンポーネントごとに異なるバージョン番号を持っており、統一が無い。
OSごとの、インストール可能なバージョンは次のとおり。
Windows 2000
初期状態では.NET Frameworkはインストールされていない。
.NET Framework 2.0までインストール可能
Windows XP
初期状態では.NET Frameworkはインストールされていない。
.NET Framework 3.5までインストール可能(但しXP SP2以上が必要)
Windows Server 2003/2003 R2
初期状態では.NET Framework 1.1がインストールされている。
.NET Framework 3.5までインストール可能(但しSP1以上が必要)
MMC3.0等のインストールで、.NET Framework 2.0がインストールされる
Windows Vista
初期状態では.NET Framework 3.0がインストールされている。
.NET Framework 3.5
.NET Framework 3.0に対し、次の機能が追加されたもの。
3.0と同様、互換性への影響に配慮し、CLRのバージョンは2.0のまま新機能を新アセンブリとして提供される。言い換えれば、3.5には2.0以降の全てが含まれているので、3.5をインストールすれば2.0以降が一式揃う。
また、この版からはJ#が開発言語としての対応が終了している。
主要な新機能は次の通り。
.NET Framework Client Profile
ASP.NET AJAX
統合言語クエリ(LINQ、Language Integrated Query)
.NET Framework 4
Visual Studio 2010で対応したバージョン。CLRのバージョンは4になった。
主要な新機能は次の通り。
動的言語ランタイム (DLR)
Managed Extensibility Framework (MEF)
並列プログラミング
Velocity (分散キャッシュAPI)
WPF(Windows Presentation Foundation)の強化
.NET Framework 4.5
Visual Studio 2013で対応したバージョン。CLRのバージョンは4.5になった。
4を完全に置き換えるもので、4と4.5は共存できないが、4.5は4の完全な上位互換だとされている。また、Windows XPのサポートが終了し、Vista以降が必須となった。
主要な新機能は次の通り。
Metro UI(Windows 8/8.1のスタイル)でのアプリケーション
非同期処理への対応
ネットワーク機能の強化
再検索