[z3-five] Restructuring
Philipp von Weitershausen
philipp at weitershausen.de
Mon Apr 18 22:26:44 MEST 2005
Hello all,
as I've mentioned a couple of times, I've been planning to restructure
some Five code. The reason is that we will want to add more Zope 3
features to Five (for example, for the mid-term I want to add i18n and
l10n capabilities) and the code structure (especially the test
structure) is getting out of hand.
In Zope 3, there's a package hierarchy convention that is not too flat
to provide no structure whatsoever and not too deep to find yourself
lost in. Most importantly, tests are included along with every package
and can therefore be much more easily be associated with the module or
class they actually test. Right now, with a big blobbish FiveTest
product, this is almost never the case in Five. Also, Zope 3 has
embraced doctests enourmously in recent times and I think they add a lot
to the implicit code documentation because they almost force one to tell
a story along the test. Also, doctests as inline docstring are probably
the closest you can get in test-to-implementation association...
So, the objective can be summed up:
* restructure Five into a more Zope3-like package hierarchy (this will
most likely result in 'browser' and 'skin' subpackages, possibly also
'traversing'; these names correspond to Zope 3 naming conventions).
* restructure tests to be more atomic and more doctest-like, thus easier
to read, understand and modify.
I'll obviously be creating a branch for this. I don't believe in
branches that live too long, though, so I'd like to come to the point
where a certain state of satisfactory restructuring is reached and
everbody is ok with it pretty soon.
Philipp
More information about the z3-five
mailing list