 |


As shown
in the following UML class diagram, MM
.NET business objects are composed of
four main classes - the main business
object class, an associated
entity class, business rules class
and data access class
(optional):

While some frameworks
wrap all of this functionality into a
single class (sacrificing performance
and extensibility for the sake of
simplicity), MM .NET business object
architecture gives far more
extensibility and run-time performance
for developers building real-world
business applications.
Extensibility
In an object-oriented
architecture, whenever you break out a
set of functionality into a separate
object you gain extensibility and
flexibility. For example, business rule
objects can be used by multiple business
objects or business process objects,
which is important since business rules
don't always apply to a single object!
In addition the MM .NET business layer
architecture allows you to subclass and
extend business rule, business entity
and data access objects to take full
advantage of object-oriented
inheritance. This just isn't possible,
or practical when these are rolled into
a single business object class.
In
addition, all business object classes
are marked as partial classes so you can
easily extend generated business layer
code without losing any of your changes!
Performance
The Rules, Entity, and Data
Access objects are not instantiated at
run time until they are first accessed
(lazy instantiation) which translates
into measurable speed increases. If you
don't need to check business rules, the
Rule object is not instantiated. If you
don't need to access data, the data
access object is not instantiated. In
addition, Entity
objects are light-weight objects that
can be quickly passed across physical tiers
of an application.
Back to
Feature List
Last
Updated:
August 30, 2007
|