はじめに
2007年12月にVisual Studioの最新バージョンであるVisual Studio 2008(以下、VS2008)がリリースされました。これと同時に.NET Frameworkの最新バージョンである.NET Framework 3.5(以下、.NET 3.5)がリリースされました。VS2008の新機能は見た目の変化や生産性の向上に分かりやすく直結する部分などが多く、大きな注目を集めていますが、.NET 3.5にもさまざまな機能強化や新機能の追加がされています。そこでVisual Studio 2008入門の第3回となる本稿では、.NET 3.5の機能強化、新機能に注目し解説していきます。
これまでの記事
対象読者
- Visual Studio 2008に興味がある方
- .NET Framework 3.5に興味がある方
必要な環境と準備
Visual Studio 2008 入門シリーズの新しい統合開発環境 Visual Studio 2008ってなんだ!?の必要な環境と準備を参考にしてください。
.NET 3.5全体像
.NET 3.5は.NET 2.0および.NET 3.0に機能追加する形で構成されています。次の図1はそのイメージを表したものです。
図1に示すように.NET 2.0の共通言語ランタイム(CLR)やベースクラスライブラリ(BCL)などのテクノロジーは.NET 3.5でも同じように利用できます。また、.NET 3.0で追加されたWPFなどの新しい4つのテクノロジーもそのまま利用できます。.NET 3.5は.NET 2.0と.NET 3.0にあるこれらのさまざまな機能を機能強化し、更にASP.NET AJAXやLINQ、言語の新機能の追加といったバージョンであると考えればよいでしょう。
本シリーズでは、.NET 3.5で機能強化された点や新機能について扱っていきます。本稿では、ベースクラスライブラリやWindows Forms、言語機能の機能強化ポイント、および.NET 3.5の目玉でもあるLINQ(Language Integrated Query:統合言語クエリ)について紹介します。
なお、以下の内容については別記事で解説します。
- ASP.NET AJAX
- Windows Presentation Foundation
- Windows Communication Foundation
- Windows Workflow Foundation
過去の.NET Frameworkとの関係
図1にも示しましたが、.NET 3.5は.NET 2.0/3.0を拡張するような形で構成されています。このため、.NET 2.0でコンパイルされたアプリケーションは基本的には.NET 3.5上でも問題なく動作します。ただし、ランタイムバージョンには以下の図2に示すような関係があります(mscorlib.dllやSystem.dllなどほとんどのBCLも同様です)。
このように.NET 2.0/3.0と.NET 3.5ではビルド番号(「メジャーバージョン.マイナーバージョン.リビジョン.ビルド」と表現する場合)に違いがあります。また、より正確には.NET 3.5は.NET 2.0/3.0を土台にしているのではなく、.NET 2.0 SP1/3.0 SP1を土台にしています。このため、よく言われる「.NET Framework 2.0でコンパイルされたアプリケーションは.NET Framework 3.5上でも動作する」は概ね正解ですが、完全ではないというところに注意が必要です。