2010/3/10 Marcos Douglas <md@...>
> 2010/3/10 Luciano Ramalho <ramalho@...>
> >
> > Xará, os caras que inventaram o modelo MVC foram os mesmos que
> > inventaram a linguagem Smalltalk e o termo "object oriented".
> >
> > Pois bem, depois de uns 20 anos praticando o modelo MVC eles
> > concluíram que não é prático na maioria das vezes você separar o V do
> > C, porque a view depende muito do controller e vice-versa.
> >
> > Então hoje o Squeak (Smalltalk open source, desenvolvido por vários
> > membors da equipe original) usa um framework gráfico que não segue
> > mais a separação MVC clássica, e usa algo que poderia ser chamado de
> > M-VC. Pessoalmente meu ultimo aplicativo GUI eu organizei assim (M
> > separado, V+C juntos) e achei bastante conveniente.
>
> Luciano,
> Se o V e C estão altamente acoplados, por que esta "separação" ainda
> existe? Se é que existe...
>
>
Ese tipo de divisão é sempre uma questão controversa. Há muitas formas de
segmentar uma solução, e há muitas variáveis a se considerar. As
características do ambiente, do framework e da linguagem, por exemplo,
afetam fortemente a segmentação em camadas.
Acho legal o exemplo do Django: eles optaram por um esquema diferente, que
eles chamam de MVT (Model View Template). A idéia deles tem um tanto a ver
com a idéia do Squeak, pois a view deles é na verdade um misto de controller
e view. Só que o T é separado porque a linguagem de template é diferente.
Isso dá a eles algumas vantagens, inclusive independência do sistema de
templates a ser utilizado.
Uma dica que eu acho válida nesse e em outros casos, especialmente para quem
está estudando: tente fazer pelo menos um projeto seguindo uma referência
como essa (MVC, por exemplo) "à risca", para entender os prós e contras do
processo. Uma vez que você tenha algum domínio prático poderá fazer suas
próprias opções, adotando ou desprezando alguma parte de um "pattern"
qualquer. O idéia é essa, se orientar pelo que funciona bem, pelos
resultados, e tentar sempre que possível fugir do dogmatismo, que a curto
prazo parece justificável, mas leva a maus resultados a longo prazo.
--
Carlos Ribeiro
Consultoria em Projetos
twitter: http://twitter.com/carribeiro
blog: http://rascunhosrotos.blogspot.com
mail: carribeiro@...
[As partes desta mensagem que não continham texto foram removidas]