特集
|
|
連載:Enterprise Library概説(全10回)で解説しているように、Enterprise Library(以下EntLib)はマイクロソフトが開発を推進している企業アプリケーション向けのオープンソースなライブラリである。現在でも日々開発、改良が進められており、2006年1月には.NET Framework 2.0に対応したEntLib 2.0版が公開されている(EntLib 2.0については特集:Enterprise Library 2.0新機能でまとめている)。そして今回、.NET Framework 3.0に対応したEntLib 3.0の正式版がリリースされた。
.NETアプリケーション・アーキテクチャを構築するに当たって、各レイヤに共通の機能を再利用可能な形でライブラリ化し、さまざまなアプリケーションの開発で利用できるようにするという発想のもとに作られたこのEntLibだが、今回新しくリリースされたEntLib 3.0は従来のEntLibとは決定的に異なる点がある。この話をする前にまず以下の図を見てもらいたい。
Application Architecture for .NETで推奨されている論理アーキテクチャ |
EntLibは基本的に図の中の赤枠で囲まれている部分を担う。 |
Application Architecture for .NET(以下AAfN)とは、patterns & practicesで公開されている.NET Frameworkを用いた分散システム・ソリューションを構築するに当たってのガイダンスであり、上の図はそのAAfNの中で提示されている論理アーキテクチャ概念図である。
EntLibは基本的に図の中の赤枠で囲まれている部分、つまり各レイヤに横断的に存在する共通機能部分(AAfNでは「セキュリティ、運用管理、通信のポリシー」に該当する)を担っているわけである(なお、AAfNの詳細については、アプリケーション・アーキテクチャ設計入門を参考にするとよい)。
このような共通機能をライブラリ化する場合は、基本的にどのようなアプリケーション・アーキテクチャでも使い回せるように設計することがセオリーである。従って、共通ライブラリが直接アプリケーション・アーキテクチャに対して設計上・実装上の制約を課すということは敬遠されるのが普通であり、従来のEntLibもこのセオリーにのっとった設計がなされていた。しかしEntLib 3.0は、共通ライブラリ的性質はそのままに、そういった従来のセオリーの枠を超えたまったく新しい機能が追加されているのである。
本稿では前編と後編の2回にわたって、この新しいEntLib 3.0について解説していく。
INDEX | ||
[特集]Enterprise Library 3.0概説(前編) | ||
自身のセオリーから飛び出した新生EntLib 3.0とは? | ||
1.EntLib 3.0とは? | ||
2.EntLib 2.0と3.0の相違点 | ||
3.EntLib 3.0から新しく追加された機能(1) | ||
4.EntLib 3.0から新しく追加された機能(2) | ||
[特集]Enterprise Library 3.0概説(後編) | ||
EntLib 3.0の注目の新機能を実装サンプルで見てみよう | ||
1.Validation Application Block(VAB) | ||
2.VABのSelf Validation機能/ASP.NET統合 | ||
3.Policy Injection Application Block(PIAB) | ||
4.Application Block Software Factory(ABSF) | ||
「Enterprise Library」 |
- 第2回 簡潔なコーディングのために (2017/7/26)
ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている - 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう - 第1回 明瞭なコーディングのために (2017/7/19)
C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える - Presentation Translator (2017/7/18)
Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
|
|