On 5/21/07, Rodrigo Senra <[EMAIL PROTECTED]> wrote:
>  [ Ruda Filgueiras ]:
>  -----------------------------
>  |Não é clean por que Zope2 nunca foi clean e ele continua na pilha. :-(
>
>  Hehehe, olhem só como são as coisas.
>  Falei que a tecnologia Zope 3 estava 1/2 verde e quase me levaram
>  para a guilhotina. O Rudá diz que Zope2 *nunca* foi clean
>  (==sempre foi sujo) e ele se safa desta frase "limpinho".
>  É ou não é impressionante. É Rudá, vc tem a manha ;o)

Apenas para clarificar, pois ficou sem contextualização essa frase.
Dizer que o zope2 não é clean, significa que ele:

1) Muita herança múltipla
2) Árvore de herança muito alta, objetos mais complexos
3) Visão relativa ao ser comparado com Zope3

Ou seja, na época em que ele foi escrito, isso era o máximo que se tinha.
Além disso, por ser em Python e se comparado com aplicações desse
tamanho em linguagens como Perl e PHP, acho ele bem limpinho. ;-)

É por isso que está havendo todo esse foco dos desenvolvedores Zope e
da Comunidade Plone em usar componentes Zope3 no Zope2, que em suma
significa Interfaces e Adapters. O restante são novos recursos e
abstrações que ficam "limpos" por serem modelados assim, ou por serem
produtos que nem existiam antes como os conceitos de View, Annotations
etc.

E por limpeza temos:
1) Alta coesão - depende tambem de um design correto, mas o uso de
Interface ajuda
2) Baixo acoplamento - Adapters
3) Interfaces para defirnir os tipos

Sobre o Twisted, se não me engano ele usa os conceitos do Zope3
(componentes): Interfaces e Adpters, porém mexendo nesse nível mais
baixo. E isso é um bom exemplo de uso da tecnologia de forma sólida e
comprovada, inclusive para mostrar que qualquer aplicação Python pode
usufruir desses recursos.

Outros exemplos estão por ai, como o lauchpad e o STOQ da Async, que
usa os componentes do Twisted e que são derivados dos componentes do
Zope(3).

-- 
Rudá Porto Filgueiras
Weimar Consultoria

Hospedagem Plone, Zope e Python?
http://www.pytown.com

Responder a