[TransWarp] Re: [Zope3-dev] Re: DataSkins and Zope3

Phillip J. Eby pje at telecommunity.com
Thu Feb 14 22:03:04 EST 2002


At 11:25 AM 2/14/02 -0500, Jim Fulton wrote:
>We are working hard to keep ZODB (and acquisition, for that matter)
>assumptions out of the architecture.

Excellent.  I just finished wiping out the vast majority of Acquisition and 
ExtensionClass dependencies in TransWarp today, myself.


>There are two ways I think we'll
>avoid ZODB dependencies:
>
>1. Ultimately, we won't require that you play with ZODB or Persistence
>    at all. Technically, we don't require Persistence now. Nothing in
>    the component architecture depends on content objects working
>    with Persistence or ZODB. From a practical perspective, however,
>    if you want to just plop some objects in an ordinary folder that is
>    stored in ZODB, then we want you to mix-in Persistence.Persistent.
>    You could have objects stored in some other mechanism. For example,
>    you could have objects loaded from an RDBMS when accessed and the
>    rest of the architecture won't care.

My comments weren't about explicit assumptions, but implicit ones.  In Zope 
2, there were often places where you could technically say that the 
interface didn't require ZODB-persistence, but the nature of the interface 
was such that it didn't scale well for say, RDBMS interaction, 
etc.  Primarily this was in the form of Zope core objects demanding data 
from a collaborating object, that they then filtered through, instead of 
asking the collaborator for the precise information they needed.  I haven't 
seen anything like that in Zope 3X, however, and I've been really thrilled 
with what I have seen, apart from the outstanding issues with the Interface 
package for Python 2.2 new-style classes and metaclasses.


>2. We'd like to provide support for non-ZODB Persistence. That is, we'd
>    like you to be able to get the benefits of the Persistence framework
>    while storing your data in an RDBMS, LDAP, or whatever.

Hm, by using adapters, perhaps?





More information about the PEAK mailing list