Clear Explanation of Concerns & Core Concerns & Cross-Cutting Concerns
As you probably know, Practice & Patterns's teem of
Microsoft recently has released
Microsoft Enterprise Library 5.0 and
Unity Application block 2.0
.
These versions of the products in opposite of prior versions have very great help and documentations (at least in my opinion!)
Unity Application block 2.0 is very cool library and one great Ioc Container. in a section of documentation exists a short explanation of "Concerns" & "Core Concerns" & "Crosscutting Concerns". I think explanation is just simple and clear.
Taking look at this library & documentation is recommended for Dependency Injection's fans.
" The features and tasks implemented in applications are
often referred to as concerns. The tasks specific to the
application are core concerns. The tasks that are common
across many parts of the application, and even across
different applications, are crosscutting concerns. Most
large applications require services such as logging,
caching, validation, and authorization, and these are
crosscutting concerns.
The simplest way to centralize these features is to build
separate components that implement each of the required
features, and then use these components wherever the
management of that concern is required—in one or more
applications. By using dependency injection mechanisms, such
as a Unity container, developers can register components
that implement crosscutting concerns and then obtain a
reference to the component at run time, without having to
specify exactly which implementation of the component is
required."