Originally posted by Richard Teston:
I know that value object is used within Business Tier while data transfer object is used if you want to transfer data outside the boundary of the application. ...
For me the only difference is a) the
J2EE pattern naming "VO" and b) the for some usages semantically better naming "DTO".
Both should have no business logic (except maybe some simple type conversions) but offer getter and setter methods.
VOs are used to to be transferred over tiers like DTOs too, but not only.
Originally posted by Baiju Varugese:
The domain object is not same as VO or DTO. domain objects are the objects which has properties and the actions for the properties
Do you know any examples? What are "actions for properties" except getters and setters?
Where did you two find the name "domain object"?
Isn't "domain objects having actions" a synonym of objects implementing Command pattern? A command
a) may also be transferred like a DTO / VO to be executed remotely but
b) may additionally be used in finite state machines or other listeners used for declarative event processing.
Thomas.
[ August 23, 2005: Message edited by: Thomas Taeger ]