[Zope3-dev] zwiki: performance of findChildren()
Steve Alexander
steve@cat-box.net
Wed, 30 Apr 2003 15:23:03 +0200
Chris Withers wrote:
> Max M wrote:
>
>> Why put the relation in the object?
>
>
> ...becasue it's much more natural to work that way.
>
>> Isn't it better to have a container with different relations?
>
> Not really.
Am I alone in finding this use of the word "relations" rather jarring?
These are relationships. Tables in a relational database are "relations".
If you're working with a relational database management system, one way
to express a relationship is by way of a relation.
> If you wanted to know what someone was working on, would you ask them or
> ask their mother?
If you want to know what section of a book shop to find an Italian
dictionary, would you look on the dictionary, or look at the signs
around the shop / ask a shop assistant.
Note that the correct place for an Italian dictionary in a bookshop
depends on whether or not you are in Italy.
Some relationships are intrinsic to an object, and so can be well
expressed as a descriptor in the object's class.
Other relationships are not intrinsic to an object, and are a property
of the system that the object is used within. These cannot be expressed
as a descriptor in the object's class.
This is a similar distinction to that which was made for the
"registration" and the "configuration" of Zope 3 services.
The configuration is of things intrinsic to the service. The
registration is of the service with the rest of the system.
--
Steve Alexander