2009-09-30 59 views

回答

7

Zope是第一個對象發佈框架evah和Zope社區在做正確的事情方面擁有豐富的經驗。 Zope 2是第一次嘗試,Zope 3是下一次嘗試,現在我們正在進入第三代Web框架,其中包括Grok,BFG和Bobo。

神交是巨大的,並且即使可多個模塊,當您安裝基本不來(和它在減少所需模塊的數量以及的過程,所以佔用空間變小)。 BFG和波波去周圍的其他方法,並擁有簡約的框架,但易於進入到Zope的工具包和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。

YMMV等,blahblah。

2

我認爲任何框架都不打算讓某些「特徵」在某些情況下比其他特徵或「需要」更好。相反,Django和Grok--或Pylons或Turbogears--之間的區別確實是一種方法。您可以根據自己的喜好找到Grok的方法,或者您可能更喜歡其中一個。我懷疑你能在其中一個人身上獲得多少你不能在其他任何人身上獲得的東西。

+1

我印象很深的是神交+的Zope相對於Django的大小。所以我想知道。如果我需要它在那裏的東西,但目前我不知道該怎麼辦? – 2009-09-30 22:33:46

+0

然後將它寫入Django - 它是開源的。 – 2009-10-01 22:09:29

5

Grok基本上是所有zope軟件包中的一種方式。所以你確實得到了一個真正的python對象數據庫的豪華(儘管你可以使用sql後端)。我假設你瞭解所謂的「zope組件體系結構」的適配器/實用程序/視圖。這些允許你創建一個強大的應用程序。如果您以後需要選擇性地定製它,特別方便。安全性傳統上是一個zope(因此grok)的強項。開發和部署完全由雞蛋處理(和構建):根據我的經驗,這是一個穩健可靠,可重複和舒適的方式。

如果你有一個應用程序可以使用直接的sql表,而不需要太多的選擇性定製:事後django沒有錯。你必須自己做很多安全的事情,所以需要敏銳的眼光。它背後的框架(ORM和URL映射器)少得多,所以你的python會感覺更「純粹和簡單」。這也意味着你需要自己做更多。

有沒有什麼可以阻止你有選擇地使用grok的部分:例如http://pypi.python.org/pypi/grokcore.component非常核心。相當不錯,所以你可以使用它,而不需要購買整個zope堆棧。我敢肯定你可以在django中使用它。 grokcore/zope組件只是python代碼。這會爲您提供適配器/接口/實用程序。我不知道你在建什麼,所以你必須試驗。

有一件事情非常有利於grok,我建議嘗試:zope的ZODB對象數據庫。一個好的ORM(和Django的很好)可以幫助我們從SQL數據庫中解脫出來,但真正的對象數據庫只是普通的奢侈品:-)