概要
.NET Framework 2.0 では、「ジェネリック」への対応など、言語拡張が主でしたが、 3.0 以降、ライブラリに大幅な強化が加えられています。
.NET Framework 3.0
.NET Framework 3.0 では WPF、WCF、WF、WCS と呼ばれる新フレームワーク(ライブラリ)が追加されました。
-
Windows Presentation Foundation(WPF)… 高機能 GUI フレームワーク。2D / 3D、ビットマップ/ベクタグラフィック、動画・音声などを統合。また、XAML と呼ばれる XML ファイルで GUI アプリケーションの視覚デザインができる。
-
Windows Communication Foundation(WCF)… Web アプリケーション用のフレームワーク。通信プロトコルの差異を吸収するのが目的で、多様な通信プロトコルに対して一貫した方法で開発可能。
-
Windows Workflow Foundation(WF)… ワークフロー(業務や処理の流れ)用のフレームワーク。プログラミング言語で書くよりもフローチャートや状態遷移図で書く方が楽なような、大まかなレベルのワークフローを、ビジュアルデザイナで作ったり、XOML と呼ばれる XML ファイルで書いたりできる。
-
Windows CardSpace(WCS)… ユーザの ID 管理用フレームワーク。
ここでは、WPF や WCF などの説明をしていきます。
.NET Framework 3.5
.NET Framework 3.5 では、LINQ(Language Integrated Query)と呼ばれる機能が追加されました。 .NET Framework 3.0 がライブラリの追加のみだったのに対して、3.5 では C# も 3.0 にバージョンアップしました。 CLI(実行インフラ)自体は 2.0 のままです。
-
C# 3.0、VB 9 … 言語内に SQL 文風のデータ操作が書ける「クエリ式」という構文が追加されました。
-
LINQ … 色々なデータ集合に対して、さまざまな操作を同じ形式のメソッド呼び出しでできるようにするための規約。
-
LINQ to Object … 配列や
IEnumerable<T>
に対して、データ操作を行う。 -
LINQ to SQL … SQL Server に格納されたデータに対して、SQL 文を自動生成することでデータ操作を行う。
-
詳しくは「LINQ」参照。
.NET Framework 4.0
.NET Framework 4.0 では非常に多岐にわたるライブラリの追加が行われています。 また、CLI も、仕様こそ 2.0 から変更はされていないものの、 パフォーマンス的な理由で1から作り直したとのことで、バージョンが変わっています。 C# や VB のバージョンもそれぞれ 4.0、10 になりました。
.NET Framwork 4.0 で追加されたライブラリの中で、主要なものをいくつか挙げます。
-
TPL(Task Parallel Library: タスク並列ライブラリ) … タスクスケジューリングによる並列処理用ライブラリ。
-
DLR(Dynamic Language Runtime) … 動的言語のための実行基盤。動的言語に限らず、動的コード生成もサポート。
その他、WPF などの既存のライブラリにも大幅な機能追加が行われています。