Reduce the amount of data transferred from server to a client
Restrict the view on the attributes for certain users/applications
Permit calculations to be done on server
Views have been introduced in SQL. These are relations that do not exist physically. They can be queried as if they existed physically, and in some cases can even be modified.(refer to ISBN 0130319953 )
In analogy it would be a great help to have a similar concept in OOP. While working with PersistentObject or with MessageObject? it is very useful to transfer only a view on the object. E.g. transfer only a predefined subset of fields or new fields which result from predefined calculations.
A first step in this direction has been done in the JavaDataObjects (JDO) definition. One can specify in the mapping specification the fields which should be loaded by default.
However this concept should be part of the programming language.
Comments and suggestions are highly appreciated.