cayenne-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Дробеня Илья <droben...@tut.by>
Subject Re: Add ActiveRecord support to Cayenne
Date Thu, 27 Dec 2012 10:13:07 GMT
@Malcolm Edgar
My friends from Luxoft and Exigen Services use Rich Domain Model, also it
is used by Fowler, Evans.
Just read
http://www.amazon.com/Domain-Driven-Design-Tackling-Complexity-Software/dp/0321125215

It's really works. In perspective of multiple domains - for each creates
separate domain model. One set of classes do not reused in all domains.
Create many domain model and mechanisms for translations between its. And
use single database.

Also I do not see - why Active Record is bad. Many, really many projects on
RoR, Python / Jango, PHP use active record. If possible please write
concrete bad cases.

Also about skill on DDD & CQRS
http://www.linkedin.com/skills/skill/DDD?trk=skills-hp-search

Why it do not used wide - because this technology is for professionals.
Indian guys may use only anemic or AR. DDD != AR

In Java world active record is used by Play framework, Groovy / Grails.
This frameworks starts wide used. also for enterprise.

I propose - generate in entities set of most used persistence methods.
Which problem we may have with such implementation? What do you think? I do
not see any problem. I use during year Grails, and we do not have problems
for not legacy databases. We created call center software ~ 25 000 lines.

2012/12/27 Malcolm Edgar <malcolm.edgar@gmail.com>

> I my experience the rich domain model is an anti-pattern leading to highly
> coupled code which is fragile and difficult to maintain. I have known large
> commercial projects to grind to a halt following this design pattern, they
> get to a point where the code base cannot be economically extended because
> of the wide ranging impacts changes have. The reason relational databases
> have been so successful is because of the flexibility being able to handle
> multiple domain perspectives at the same time.
>
> The reason adding save methods to entities is bad is because it can be
> ambiguous as to what you are persisting when you have a large object
> graph. I also don't think is provides a good way of supporting
> transactional semantics.
>
> regards Malcolm Edgar
>
>
> On Thu, Dec 27, 2012 at 7:51 PM, emeka okafor <emeka_1978@yahoo.com>
> wrote:
>
> > There is not much I can tell you about WO than pointing you to the
> > following link
> > http://www.wocommunity.org
> >
> > Regards.
> >
> >
> > ________________________________
> >  From: Juan José Gil <matero@gmail.com>
> > To: user@cayenne.apache.org; emeka okafor <emeka_1978@yahoo.com>
> > Sent: Thursday, December 27, 2012 3:48 AM
> > Subject: Re: Add ActiveRecord support to Cayenne
> >
> > Pardon my ignorance, I really don't understand what do you mean with
> >
> > >>Beside that I rather do simple stuffs like the webobjects guys do. You
> do
> > not hear them complain about such
> > >>things like services, and dependency injection and what not
> >
> > I don't know anything about WO :(
> >
> > I would really appreciate to have some clue about that :)
> >
> > Regards,
> > Juanjo
> >
> > 2012/12/26 emeka okafor <emeka_1978@yahoo.com>
> >
> > > It depends on what you call service. Is a service a message call that
> is
> > > remote in the sense that it is outside of the same JVM or is a service
> > any
> > > random function that do not belong to the domain object? If I am
> working
> > in
> > > a j2ee/spring environment i.e I want to use ejbs or have a container
> > > managed my objects, then you are right and I am going to have a problem
> > > integrating cayenne objects into that environment and will do all kind
> of
> > > gymnastic to accomodate for that, by creating fake pojos with wrapper
> and
> > > annotations so that the container can inject those services. In this
> > case,
> > > my cayenne objects become naked(cayenne is not to blame for that).
> > > Personally I would rather program in groovy with metaprogramming than
> do
> > > all that stuff if I had to. Beside that I rather do simple stuffs like
> > the
> > > webobjects guys do. You do not hear them complain about such things
> like
> > > services, and dependency injection and what not. I mean, last time I
> > > checked, Apple Itunes
> > >  was running on a technologie similar to cayenne.
> > >
> >
>



-- 
С уважением, Илья Дробеня.

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message