> I can understand the desirability of this programming model,
> but what does that mean in terms of the actual system
> behavior?  Are you suggesting that the GUI layer should have
> no way for the user to control when changes made in the GUI
> are moved into the app's entity classes (which you want to
> mean that they're magically guaranteed to make it to the database)?

Well, it's not as much about not being able to make changes from the GUI as
about not explicitely creating, reading, updating and deleting in/from a
database. My GUI programmer should let tell the application layer "add this
Person object" instead of "send this Person object to the database". I
agree, in practice the difference might be quite subtle.

It's my experience that layered enterpise applications tend to be biased to
the database. Despite some really good O/R mapping tools (and due to some
poor ones), I see often see designs in which relational data is mapped to an
object model that has a very heavy relational smell to it, i.e. through all
layers I can clearly see the database scheme. For some reason, for a lot of
developers this approach is quite tempting. I think that in an environment
where database-related functionality is hidden as much as possible, bad
designs like these show up less frequently.

I really have to admit that I haven't spend a lot of time thinking all this
stuff over. So maybe it was a bad idea to bring it into this discussion. And
maybe, the subject should not have been 'Transparent Persistence', but
something like 'Hiding persisitence-related functionality as much as
possible'. But I just wanted to see what kind of ideas you guys have about
these matters. (I did *not* want to invoke a flame-like outburst from
Thomas, anyway. And I've no intension to reply on such a post.)

The next couple of months, I'll be busy with other stuff than layerd
enterprise app's, so I don't think these thoughts will be worked out in a
detail yet. But maybe I'll bring in some more concrete insights one day. ;)

Regards,

Stefan

===================================
This list is hosted by DevelopMentorŪ  http://www.develop.com
Some .NET courses you may be interested in:

NEW! Guerrilla ASP.NET, 26 Jan 2004, in Los Angeles
http://www.develop.com/courses/gaspdotnetls

View archives and manage your subscription(s) at http://discuss.develop.com

Reply via email to