On Fri, 2002-10-04 at 15:28, David Graham wrote:

This is a layer above all persistence frameworks (JDBC, JDO, EJB, OJB,
etc.) 
that your application programs to.  If you decide to change persistence 
frameworks, most of your code remains unchanged because it doesn't know 
which one you're using.



I just don't think it's feasable to design a single, one-size-fits-all 
abstraction mechanism for all persistence layers. Many persistence
systems have different tricks and different emphases which defy any
attempt to neatly abstract them all.

For example the Simper framework (which I wrote) is designed to cut
through the MVC hierarchy like a butter knife, using the same beans in
the Model (which is Simper itself), to the Controller (Struts and your
actions), to the View (which is JSP, Velocity, etc). This is a FEATURE
not a shortcoming, to reduce data copying across layers and simplify
code management.

Other differences you may find are in the realm of code generation.
People tend to think that you're either writing beans by hand, or you're
having a tool auto-generate classes for you. But this is a false
assumption: Simper was designed to avoid code generation entirely. It's
all dynamic, using DynaBeans and what I call "point-and-shoot table
configuration". You don't write classes, you don't even auto-generate
classes. You just configure them, in a way similar to how Struts 1.1
lets you dynamically configure DynaActionForms.

In short, I think trying to make a single layer which sits above all
known persistence systems will just stifle creativity in approaches.

Bryan

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to