Steve Spicklemire wrote:
> >>>>> "Itai" == Itai Tavor <[EMAIL PROTECTED]> writes:
> Itai> The 2nd way seems to go better with OO principles - all
> Itai> handling of photos is delegated to the Photos Specialist and
> Itai> the Product doesn't care if the photo exists or not, or
> Itai> where it comes from. But it also increases complexity in
> Itai> Photos, because I need to implement an efficient way to
> Itai> retrieve photos (with a Catalog, or SQL searches), and
> Itai> because it introduces the photo_key. Storing photo_id in
> Itai> Product eliminates these complexities, but it moves some of
> Itai> the responsibility for managing photos into Product.
>Hmmm.. it seems to me that it makes more sense for the Product
>to know the id of the Photo that *it* needs to display itself than
>for the Photo to have to know that it belongs to a particular
>Product. Also.. I can imagine that the Photo class might be useful
>for lots of other things besides Products, and how would you teach
>it what type of object it belongs to?
Actually, my Photo object really is used for other things besides
Products, which is where my problems with XOR connections come in...
I myself prefer the first method (Product knowing the id of its
Photo), but I've been bitten a lot recently by placing
responsibilities outside the classes where they belong, so I'm trying
hard to make sure I don't do it again.
>Just my $0.02.
It's worth more than that to me :)
Itai Tavor "Je sautille, donc je suis."
C3Works [EMAIL PROTECTED] - Kermit the Frog
"If you haven't got your health, you haven't got anything"
Zope-Dev maillist - [EMAIL PROTECTED]
** No cross posts or HTML encoding! **
(Related lists -