[Zope-dev] zope.publisher dependencies

Martijn Faassen faassen at startifact.com
Tue Feb 24 12:49:28 EST 2009


Hey,

On Tue, Feb 24, 2009 at 6:33 PM, Stephan Richter
<srichter at cosmos.phy.tufts.edu> wrote:
> In general I am worried that we are creating too many packages. However, here
> is my order of importance:
>
> 1. Minimize dependencies.
> 2. Minimize packages.

+1

I think on the longer term better dependencies can allow us to remove
a great number of packages from the Zope Framework, so I'm not too
worried about the minimization of packages right now. To properly
reduce dependencies you need to go about it in an intelligent way
anyway and do some actual analysis of code, so the new packages that
are created tend to make sense.

Fundamental goals should be:

* Make the code more comprehensible

* Make the code more reusable

The dependency refactoring is not only an effort to make the
dependencies between packages a nicer tree (and thus encourage reuse
of more packages and easier understandability), but also results in
trees that have less code altogether. I think the last point is very
important. Less code might not be reflected directly in the amount of
packages, but is a huge win anyway. Less code makes the code that
remains typically far more understandable and because it pulls in less
baggage also more reusable.

Less code should be evaluated for the whole framework, but also for
each node in the dependency tree.

As an example, zope.site is a new package but contains bits of
zope.app.component and zope.app.folder both. Together with the
creation of zope.container and moving stuff from zope.app.component to
zope.security, we can probably eventually get rid of
zope.app.component altogether, along with zope.app.folder and
zope.app.container. That is a net minimization of packages, and what's
more important, also less code to have to understand.

Regards,

Martijn


More information about the Zope-Dev mailing list