python包命名空间的背后是什么:z3c,zc,collective?

Ski*_*Ski 6 python zope

所以他们都与zope有某种关系.问题是怎么样的?

我对Zope不熟悉.我想,ZC,Z3C代表Zope ComponentZope3 Component,但我想肯定.还有一个collective命名空间.它下面有什么样的套餐?

什么是其他众所周知的python包命名空间?

当包用zc,z3c和其他包命名时,是否有任何约定?

有时我看到以zc开头的包,我无法理解为什么它们是命名空间的.例如,z3c.sqlalchemy有命名空间,因为它是sqlalchemyzope项目的包装器.但另一个例子zc.buildout看起来像一个完全独立的项目.它是否仅仅因为它是由在Zope上工作的人开发而得到名称空间?如果我会在Zope上工作,那就意味着我应该为我的项目添加前缀,zc即使它们与任何其他Zope包都不相关?

Len*_*bro 8

  • zc 是"Zope公司".
  • z3c 是"Zope 3社区",这个名称空间早已被"弃用",即没有使用此命名空间创建新包.
  • collective是指Plone Collective,一个用于Plone包的svn存储库,对贡献者持友好态度.它是新的通用Plone软件包的"默认"命名空间,它现在已经很长一段时间不是Plone核心的一部分.

同样感兴趣的是:

  • zope 最初用于Zope 3的一部分的软件包.现在很少用于新软件包.
  • Products,用于较旧的Zope2/Plone包.所有Zope2产品都必须在Products目录中,因为之前有名称空间包,这是一个残余的事实.