Hi,
Although Alex may already have answered your question, I thought a
more general explanation might also be helpful.
A business object represents an entity in the domain (the real world
system of which the application is a software representation).
Business objects should encapsulate logic such as relationships and
validations which describe the business rules. They should be
reusable across various applications as they know nothing about user
gestures or application structure.
Value Objects, are just bundles of properties and information that
may or may not correlate with actual business entities. They are more
concerned with moving information around in convenient chunks and
providing 'views' of the data than actually representing business
logic. As such, they are more specific to the particular needs and
processes of a given application. In other frameworks they are
(perhaps more aptly) called data transfer objects.
Personally I would say that it is not at all fair to say that
business objects are just collections of value objects; but I don't
blame you for getting that impression, because that's how they tend
to be talked about in Cairngorm.
Cheers,
Lach
On 10/12/2006, at 5:53 AM, lostinrecursion wrote:
I have one question for someone who may know. Could someone tell me
the difference between a Business Object (such as the one Alex uses to
encapsulate model properties) and a Value Object (which I am used to
constructing).
Is it fair to say a business object is just a "faux" collection of
various Value Object (and non VO) properties in one convenient
location?