In "J2EE Patterns" the forces and motivation for ValueObject seem to be related to performance.
I'm writing my application so client views are always read-only. I.e., a client request is processed by the server application and data returned to the client. I only want to expose values to the client via ValueObject getters (in fact, I don't really want the client to see the setter methods). Is this an appropriate rationale for using a ValueObject or is it bogus for me to force the client's view to be read-only?
-
ValueObject motivation (1 messages)
- Posted by: Max Rahder
- Posted on: April 29 2002 16:27 EDT
Threaded Messages (1)
- ValueObject motivation by Jose A. Puche on April 30 2002 02:32 EDT
-
ValueObject motivation[ Go to top ]
- Posted by: Jose A. Puche
- Posted on: April 30 2002 02:32 EDT
- in response to Max Rahder
It's right for you to use ValueObject.
The motivation for VO is to minimize the workflow (network traffic) by introducing a coarse-grain Value Object.
In addition, you can use the "Page by page iterator" design pattern to get network traffic minimized.
It is a good option to combine "Value Object" and "Page by page iterator". You can not only meet all data in a record to send together all fields in a round trip (Value Oject) by also you could pack a lot of them (i.e. array of ValueObjects) and configure a parameter to determine how much VO you may pack (Page by page it.)
Because you don`t update the underline data in your GUI, you don't ever have to invalidate the pack of VO's