> http://weblogs.java.net/pub/wlg/971
> 
> Just wanted to point out what java developers are really 
> thinking about in regards to EJB-CMP, perhaps to show that my 
> idea that the spec approach doesn't necesarily produce 
> something people want. True even when the spec is widely 
> implemented, and in particular in regards to EJB-CMP.

        Interesting read :) 
        Some people disliked the concept of EJB however I got the
feeling more people disliked a set of details in EJB than the EJB
concept as a whole. 

        But indeed an example that a spec can work against you. 

> Between the discussions on this list and discussions I had at 
> a workshop in Malmo, I am more intrigued than ever about OR 
> in .net, but I think the question remains open about what the 
> best way to do it really is.

        Oh definitely true. The O/R mapping world is very divided on the
subject what drives what: relational model drives classmodel or
classmodel drives relational model? And what you said in another mail,
the legacy situation demands sometimes that you only can write glue code
between an existing class tree and relational model which both can't
change. 

        However I don't think all of these things really matter much, as
they're more politics. I mean: if you want the class model to drive the
relational model, you need just 2 tables: 1 with 2 fields: a blob field
where teh serialized object is stored in and a PK field of type GUID and
a table which contains the relations between the objects. Of course this
is very simplistic but IMHO it illustrates the difference between OO and
the relational model so if you want true OO all the way, you have a hard
time projecting that OO hierarchy on a relational model, and you're
better of opting for an OO database.

        To me the biggest issues which need standardization and
addressing by the platform supplier are:
- standarized object query language. This is not necessary for the
platform, but it is for end users
- generic platform for cross appdomain object awareness. This is
required so entities can be safely cached in one appdomain and used in
another, for example in a desktop application which targets a single
central database. 
- generic platform for persistence end-points. This means that the
persistence logic is plugged into this framework, while the developer
sees just the framework. Like in EJB-CMP where the container (to my
knowledge) takes care of teh persistence, not the developer. This not
only gives the persistence vendors a common playground which guarantees
consistency, it also gives safety for the developers using these tools
so it's not a risk to opt for persistence framework ABC over DEF because
you're not really committing to a very vendor specific approach. 

        I find these points far more important than the detailed
nittpicking discussions about the fact if a 3 layer class hierarchy
should be persisted in a single table (halpin/nijssen supertype-subtype
flattening) or in 3 different tables linked to eachother with 1:1
relationships.

                FB

        

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

NEW! Guerrilla ASP.NET, 17 May 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