[Zope3-dev] Big import blocks

Steve Alexander steve@cat-box.net
Thu, 20 Mar 2003 19:38:52 +0200


>  > Assuming this data is roughly correct, we can cut the number of this
>  > particular kind of dead chickens roughly in half by creating a module
>  > with a short name (e.g. "zapi") that imports the 120 most popular
> 
> I think this is a useful analysis, and would love to see something
> like this done instead of continuing the current import hell.  A
> script to perform the analysis would be good; additions could be made
> to the API module when something becomes popular enough.

An API is an Application Programming Interface.

Shouldn't the names for inclusion in this API be taken from an analysis 
of what names a typical Application needs?

I don't think the Zope 3 application is a typical application.
Zope 3 is made up of many layers. There are lots of cross-references 
between these layers that are not so pertinent to other applications.

(The plumbing of a building serves the insides of the building. Some 
buildings have the plumbing on the outside, but that's not an invitation 
to hook up to it from the street.)

I'm concerned that an API modeled on what the Zope application needs 
from the Zope application will be skewed from what other applications 
will need.

So, I suggest choosing the names for the API module very carefully, with 
a rationale for why a particular name is chosen over and above "it is 
common in the Zope 3 application".

The zope/app/api.py module should also have an IZopeAppApi interface 
defined for it (to live in zope/app/interfaces/something).

--
Steve Alexander