Pergunta

O que são o esmagamento (trocadilho intencional) apresenta de grok que o torna melhor do que Django? como eu sei quando o meu projeto necessidades grok + Zope, ou pode apenas ser desenvolvido com Django?

Foi útil?

Solução

Zope foi o primeiro objeto de publicação quadro evah, ea comunidade Zope tem uma longa experiência em fazer coisas da maneira certa. Zope 2 foi a primeira tentativa, Zope 3 foi a próxima tentativa, e estamos agora na terceira geração de frameworks web, que inclui Grok, BFG e Bobo.

Grok é enorme, e tem ainda mais módulos disponíveis que não vem quando você instala a base (e é no processo de redução do número de módulos necessários, bem como, de modo a pegada fica menor). BFG e Bobo ir a outra maneira ao redor, e são estruturas minimalistas, mas com fácil acesso ao Zope Toolkit e todas as funcionalidades do Zope.

E, embora Django está fazendo muitos dos mesmos erros zope2 fizeram, eles são também corrigi-los muito mais rápido, então eu completamente esperar muito dessa discussão para ser discutível em cinco anos, porque espero cada framework web Python para uso WSGI + + WebOb Repoze + libertação + buildout como uma base até então. Mas mesmo assim eu iria para estruturas onde eu posso usar o Component Architecture Zope e ZODB, mas que inclui não só os feitos pela comunidade Zope, mas também, por exemplo, Turbogears. E talvez ele irá incluir Django também até lá, quem sabe ...: -)

Dependendo do que os requisitos do projeto são eu faria hoje ir com qualquer Plone (se eles precisam CMS), Grok ou BFG (dependendo dos desenvolvedores envolvidos, bem como a complexidade da tarefa e do orçamento). Este é, naturalmente, em parte, dependendo da minha grande experiência com as tecnologias do Zope e minha pequena experiência com Django, mas principalmente porque eu posso usar ZTK e ZODB em Grok e BFG.

YMMV, etc, blahblah.

Outras dicas

Grok é basicamente todo o poder do Zope de uma maneira mais fácil de pacote de uso. Então você começa todo o luxo de um banco de dados objeto real python (embora você pode usar um backend SQL). E eu suponho que você sabe sobre os adaptadores / utilitários / vistas da chamada "arquitetura de componente Zope". Aqueles permitem que você faça uma aplicação robusta. Especialmente útil se você precisar posteriormente para personalizá-lo seletivamente. E a segurança é tradicionalmente um zope (e, portanto, grok) ponto forte. Desenvolvimento e implantação são tratados totalmente com ovos (e buildout.): Na minha experiência esta é uma maneira robusta e confiável e repetível e confortável

Se você tiver um aplicativo que pode trabalhar com tabelas SQL retas sem a necessidade de personalização muito seletiva depois: errado nada com Django. Você vai ter que fazer muita segurança mesmo, de modo que precisa de um olho afiado. Há muito menos de um quadro por trás dele (ORM e um mapeador url), para que o seu python vai se sentir mais "pura e simples". Isto também significa que você precisa fazer mais do mesmo.

Não há nada de que você parar de usar seletivamente partes do Grok: http: //pypi.python. org / pypi / grokcore.component , por exemplo, é muito o núcleo. Muito bem isolado, para que você possa usá-lo sem a compra em toda a pilha zope. Tenho certeza que você pode usar isso no Django. grokcore / componente Zope é um código python apenas. Isso faz com que você os adaptadores / interfaces / utilitários. Eu não sei o que você está construindo, assim você vai ter que experimento.

Uma coisa extremamente a favor de grok que eu sugiro experimentar: banco de dados ZODB objeto do Zope. Um bom ORM (e Django é bastante ok) ajuda muito a tomar a dor de bancos de dados SQL, mas um banco de dados objeto real é luxo simplesmente: -)

Eu não acho que qualquer um dos quadros destinam-se a ter qualquer 'recursos' que fazem um 'melhor' do que o outro, ou 'necessária' em determinadas circunstâncias. Em vez disso, a diferença entre Django e Grok - ou Pilares, ou Turbogears - é realmente um dos abordagem. Você pode encontrar a abordagem de Grok ao seu gosto, ou você pode preferir um dos outros. Duvido que haja muito que você pode conseguir em um deles que você não pode em qualquer um dos outros.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top