[Zope3-dev] RFC: ViewDirectoryHierarchyReorganization

Rik Hoekstra rik.hoekstra@inghist.nl
Fri, 29 Nov 2002 15:27:59 +0100


Martijn Faassen wrote:
> Shane Hathaway wrote:
> 
>>Martijn Faassen wrote:
>>
>>>The directory hierarchy navigation skills are in 
>>>a sense a 'dead chicken' in Zope 3. :)
>>
>>Is it possible to have "emergent dead chickens"? :-)  I guess it is, 
>>because as the hierarchy gets deeper, it gets progressively harder to 
>>find things, especially for developers not familiar with the codebase.
> 
> 
> Yes. I think an important realization should be that the physical location
> of code is part of the implementation. Since we're supposed to be
> about interfaces, how come we need to know so much about the 
> implementation here?
> 
> 
>>Do you have a specific solution to propose?

<snip rest and interface separation>

Hi Martijn

As a preparation for the sprintathon. I have been looking through your proposal 
and the current implementation.

I think the separation of views and code is a good idea. Such a view hierarchy 
(if created) will need to be  well thought-out. I think there are a few things 
to consider (from a Zope 2 background, perhaps Zope3 has already solved all this).

For many practical purposes views for TTW development will probably be more 
lumped together than the nice separation of components, services and adapters 
suggests.
Of course, you could mirror the code hierarchy (or interfaces hierarchy - and 
would these need to be synchronized) but I think this may lead to a scattering 
of partial views bound to specific interfaces across the hierarchy. The risk is 
this may turn out to be too confusing for webdevelopers, because it suppose a 
detailed  knowledge of the inner workings of Zope, something you wanted to 
prevent with your proposal, if I'm not mistaken.

On the other hand, lumping partial views together into more coherent ones and a 
corresponding different hierarchy may give your developer a false idea of the 
interface and code hierarchy underlying the views. This would make it more 
difficult to 'descend into the code' if the need arose for the Webdeveloper, 
because its organization would be different.

These are only my 0.02 as I don't know a solution either...

Rik