ホーム > .NET Framework 4 > 5 分で理解する .NET Framework 4 概要

5 分で理解する .NET Framework 4 概要

.NET Framework 4 の全体像と構成要素を紹介します。.NET Framework 4 は CLR から一新し、.NET Framework 3.5 のような内部的に過去のバージョンを含む形式ではなく、完全に新しいバージョンとしてリリースされます。

.NET Framework 4 では Windows アプリケーション、Web アプリケーションなど多様なアプリケーション形態に対して、適切な選択肢を提供し、使い慣れたプログラミングモデルでアプリケーションを実現していくことが可能です。この概要では .NET Framework が提供する機能の全体像を理解することを目的としています。

CLR (Common Language Runtime)

CLR は .NET Framework の実行を司るランタイム機能で、アセンブリのロード、セキュリティのチェック、アプリケーションの実行、メモリ管理などを行います。また、CLR は他のバージョンの CLR と 1 つの環境内で共存することができ、実行するアプリケーションによって適切なバージョンの CLR が起動されます。

BCL (Base Class Library)

BCL は .NET Framework の中でも基本的な処理を実装するライブラリです。アプリケーションの形態に依存しないライブラリです。IO や基本的な通信などにかかわるクラスライブラリが収録されています。

ADO.NET

ADO.NET は .NET Framework におけるデータ アクセスを実装するためのテクノロジの総称です。ADO.NET では Relational Database 以外にもXML など様々なデータソースに対応し、効率的なデータアクセスを容易に構築することができます。また、ADO.NET では様々な用途に対応し、適切なテクノロジを選択できるよう、次のようなテクノロジを提供しています。

DataSet

DataSet は ADO.NET の初期から提供されている非接続型データアクセスを実現するテクノロジです。データソースのデータをメモリ上に配置し、データソースへの接続を減らすための仕組みです。

LINQ

従来、Relational Database には SQL、XML には XPath など、データソースの種類に応じたデータアクセス手法が必要とされていました。これに対して、LINQ ではSQL によく似た統一的なクエリー句を使用して、データソースの種類に依存しないデータアクセスを可能にするためのテクノロジです。

Entity Framework

Entity Framework はデータソースへのストアに適したデータ構造とアプリケーションのプログラムで使用する際に使いやすいデータ構造 (Entity) が異なるいわゆるインピーダンス ミスマッチを解決するテクノロジです。

ASP.NET

.NET Framework の中で Web アプリケーションを実現するテクノロジの総称です。IIS 上でホストされる .NET Framework で稼働し、高いセキュリティと高い生産性を両立させることが可能です。

Web フォーム

Windows フォーム の開発モデルをそのままWeb でも実現可能にした ASP.NET の中で最も基本となるテクノロジです。Control を活用し、複雑になりがちな Web アプリケーション開発の様々な要素を隠ぺいすることで、非常に高い生産性を実現します。

ASP.NET MVC

ASP.NET MVC は ASP.NET の中で MVC パターンを実現するフレームワークです。HTMLのタグを直接記述することで、CSS や JavaScript との親和性を向上し、より緻密なデザインやインタラクティブ性を実現することが可能になります。また、単体テストの実施も容易になり、Web アプリケーションの品質向上をサポートします。

ASP.NET AJAX

AJAX アプリケーションを Web Forms のテクノロジを活用して、非常に簡単に実現するテクノロジです。最もシンプルなケースでは 1 行も JavaScript を記述することなく AJAX アプリケーションを実現することが可能です。また、ASP.NET MVC においても豊富なライブラリを持つオープン ソースの JavaScript ライブラリである jQuery を標準でサポートし AJAX アプリケーションの構築を支援します。

Dynamic Data

ASP.NET Dynamic Dataは Entity Framework によって作成された Entity Data Model から Web ページを自動的に生成する仕組みです。データの参照はもちろん、新規登録・更新・削除にも対応した Web アプリケーションを簡単に作成することが可能です。

Windows フォーム

Windows フォームは .NET Framework 以前の Windows アプリケーション開発の代表的テクノロジである VB フォームを .NET Framework 上で再現し、さらに .NET Framework のさまざまな機能を活用可能にしたテクノロジです。

WPF (Windows Presentation Foundation)

.NET Framework 3.0 から新たに登場した Windows アプリケーションを実現するためのテクノロジです。Windows Forms では実現が難しかった豊かな表現力を持つクライアント アプリケーションを作成できます。
また、Expression Blend を利用することで、アプリケーションのインタラクティブ性を飛躍的に向上させる事が可能です。

WCF (Windows Communication Foundation)

WCF は .NET Framework における様々な通信手法を単一のプログラミングモデルを用いて実現するテクノロジです。.NET Remoting の様なバイナリ通信や SOAP、REST、JSON といった業界標準のプロトコルまで広くサポートしています。特に SOAP に関しては WS-* の規格に広く準拠し、Windows 以外のプラットフォームとの相互運用性に強く寄与します。

Data Services

WCF Data Services は Web やイントラネットにおいて REST 形式でのデータ サービスを提供するテクノロジです。Silverlight やクライアント アプリケーション、AJAX アプリケーションなどに対して汎用的にデータの参照や更新のサービスを提供する仕組みです。

WF (Windows Workflow Foundation)

WF はワークフローをサポートするためのテクノロジです。従来のプログラムではワークフローも全てプログラミングコードで記述され、プログラマ以外がそれらを理解し、編集することは非常に困難でした。それをVisual Studio を用いてグラフィカルに確認、編集することが可能となることで、ビジネスのスペシャリストとのコミュニケーションをより正確にすることを実現します。

CardSpace

CardSpace は、アイデンティティ メタシステムで求められる一貫したユーザー エクスペリエンスを提供する Microsoft .NET Framework 3.0 コンポーネントです。特に改ざんや悪用の防止を強化することによって、エンド ユーザーのデジタル ID を保護し、エンド ユーザー管理を維持します。

.NET Framework Client Profile

.NET Framework Client Profile は .NET Framework 4 の機能の中からクライアント アプリケーションで使用される機能のみを抽出した軽量のセットアップパッケージです。.NET Framework Client Profile を使用することでランライムのクライアントへの配布を容易にすることができます。

  • 共通言語ランタイム (CLR)
  • ClickOnce
  • Windows フォーム
  • Windows Presentation Foundation (WPF)
  • Windows Communication Foundation (WCF)
  • Windows Workflow Foundation (WF)
  • Entity Framework
  • LINQ to SQL
  • マネージ拡張機能フレームワーク (MEF)
  • 並列プログラミングの機能:Task Prallel Library (TPL)、Parallel LINQ (PLINQ)、並列処理用データ構造体 (CD)

▲ Top of Page