On Sun, Nov 16, 2003 at 10:38:56AM -0800, Dylan Reinhardt wrote:
On Sun, 2003-11-16 at 09:44, Brad Allen wrote:
Hi, I'm a Zope newbie, still in the process of reading the documentation and working on my first Zope project. I'm at the stage of organizing all my scripts and DTML documents in a folder hierarchy, but am unclear on how to design against the "fragility" issues discussed in the Zope book. Should I try to avoid a deep folder hierarchy and go with something more flat (but less well-organized?) Does anyone have any recommendations for me?
The key here is discipline, especially if there is more than one person adding objects to the site. (snip) Some best practices: 1. Write things down. In particular, what "magic" names are provided by custom objects? 2. Design and enforce a security policy. 3. Reduce usage of objects as "global" variables. 4. Create a special naming scheme for "magic" names and objects that *are* used as variables. 5. Plan on doing some troubleshooting anyway. :-)
Good advice. I would add one more: 6. When your application requirements have settled down a bit, refactor a group of scripts and magic-named objects into one or more Products with clear responsibilities and interfaces. As an example, in CMF it's common to implement new functionality with Scripts in the skins. This is fine for prototyping, but I'm finding it nice to convert the new functionality into a CMF Tool. p.s. I'm the guy that put the word "fragility" in that chapter :-) -- Paul Winkler http://www.slinkp.com Look! Up in the sky! It's ANTI RANDOM ENGINEER! (random hero from isometric.spaceninja.com)