什么是grok的粉碎(双关语)特征使它比django更好?我怎么知道我的项目何时需要grok + zope,或者它可以用django开发?
Zope是第一个发布框架evah的对象,而Zope社区在"做正确的事情"方面有着长期的经验.Zope 2是第一次尝试,Zope 3是下一次尝试,我们现在进入第三代Web框架,其中包括Grok,BFG和Bobo.
Grok是庞大的,并且有更多的模块可供使用,当您安装基座时(并且它正在减少所需模块的数量,因此占用空间变小).相反,BFG和Bobo是简约的框架,但可以轻松访问Zope Toolkit和Zope的所有功能.
虽然Django是使许多同样的错误Zope2做的,他们也固定要快得多,所以我完全期待太多讨论在五年内没有实际意义的,因为我希望每一个Python的Web框架使用WSGI +的WebOb +以此为依据,以Repoze + Deliverance + Buildout为基础.但即使这样,我也会选择可以使用Zope组件架构和ZODB的框架,但这不仅包括Zope社区制作的框架,还包括Turbogears.也许它会包括当时的Django,谁知道...... :-)
根据项目要求,我今天会选择Plone(如果他们需要CMS),Grok或BFG(取决于所涉及的开发人员,以及任务和预算的复杂性).这当然部分取决于我对Zope技术的丰富经验以及我对Django的小经验,但主要是因为我可以在Grok和BFG中使用ZTK和ZODB.
blamblah,YMMV等.
Grok基本上是所有zope的强大功能,更容易使用包.所以你可以获得真正的python对象数据库的所有奢侈品(尽管你可以使用sql后端).我假设您了解所谓的"zope组件架构"的适配器/实用程序/视图.这些允许您制作一个强大的应用程序.如果您以后需要有选择地自定义它,特别方便.安全传统上是一个zope(也就是grok)的优点.开发和部署完全由鸡蛋(和buildout)处理:根据我的经验,这是一种强大,可靠,可重复和舒适的方式.
如果你有一个可以使用直接sql表的应用程序,之后不需要太多选择性的自定义:django没有任何问题.你必须自己做很多安全,所以需要敏锐的眼光.它背后的框架(ORM和url映射器)要少得多,因此你的python会感觉更"纯粹和简单".这也意味着你需要自己做更多.
没有什么可以阻止你有选择地使用grok的一部分:例如http://pypi.python.org/pypi/grokcore.component是核心.很好地隔离,所以你可以使用它而无需购买整个zope堆栈.我很确定你可以在django中使用它.grokcore/zope组件只是python代码.这将为您提供适配器/接口/实用程序.我不知道你在建造什么,所以你必须进行实验.
有一点我非常赞成grok,我建议尝试一下:zope的ZODB对象数据库.一个好的ORM(并且django非常好)可以帮助很多人解决SQL数据库的痛苦,但真正的对象数据库只是简单的奢侈品:-)
| 归档时间: |
|
| 查看次数: |
5544 次 |
| 最近记录: |