Re: Cayenne pattern quesiton

From: Erdinc (kocaman..ahoo.com)
Date: Thu Apr 01 2010 - 02:14:47 EDT

  • Next message: Summers, John1 : "can Cayenne handle an inheritance model like this?..."

    I agree. My favorite method is to use Domain Driven Design techniques.

    ________________________________
    From: Malcolm Edgar <malcolm.edga..mail.com>
    To: user <use..ayenne.apache.org>
    Sent: Thu, April 1, 2010 6:32:05 AM
    Subject: Re: Cayenne pattern quesiton

    I would argue against putting finder methods in the generated
    entities, as I think it is a separate concern and you can easily end
    up with tightly coupled code which is difficult to refactor.

    The "Rich Domain" model can end up becoming the "Blob" anti-pattern.

    I don't think stateful entities objects should be be mixed up with
    static finder methods.

    regards Malcolm Edgar

    On Wed, Mar 31, 2010 at 6:10 PM, Andrus Adamchik <andru..bjectstyle.org> wrote:
    > Also I suspect I am not using a classic version of DAO. My DAO's are morphed
    > with the "business layer" and can have interactions with other subsystems,
    > not just Cayenne (e.g. caching, data access via web services, etc.). Also
    > they are not auto-generated, as any new methods are created when a need in
    > them arises in the application. The idea is to keep it tight and avoid
    > having any unused and unneeded methods.
    >
    > Andrus
    >
    > On Mar 31, 2010, at 10:02 AM, Andrus Adamchik wrote:
    >
    >> I am using a form of DAOs (with injection) with the main reason being that
    >> I can provide alternative implementations in a context-sensitive manner
    >> without changing the DAO interface (something that can't be done with the
    >> static methods), which is very handy in numerous situations.
    >>
    >> Andrus
    >>
    >>
    >> On Mar 30, 2010, at 11:51 PM, MGargan..scholar.com wrote:
    >>>
    >>> When using Cayenne are DAO's still the pattern used for findAll,
    >>> findByProperty, and findById query methods or is there some better way to
    >>> do this in Cayenne? For example in the pet store project I see DAO's
    >>> being implemented, but I know that example was taken from other projects
    >>> that use DAO's to begin with so I'm not sure if it was just retrofitted
    >>> to
    >>> use DAO's with Cayenne. I tried to look at some other examples from the
    >>> website, but most of those are either not complex enough to warrant that
    >>> kind of structure or the links are dead. I hope this is clear. :) Also
    >>> if DAO's are the recommended pattern to use is there a tool (i.e. eclipse
    >>> plugin) that will generate them?
    >>>
    >>> Thanks.
    >>> -Mike
    >>
    >>
    >
    >

          



    This archive was generated by hypermail 2.0.0 : Thu Apr 01 2010 - 02:15:54 EDT