Entrar
Usuário novo? Cadastre-se
python-brasil
? Você já é um associado? Entre no Yahoo!

Dicas

Você sabia...
Você pode ordenar suas mensagens por data? Basta clicar no link da coluna data. Suas preferências serão lembradas para que você não precise fazer isso novamente sempre que retornar.

Mensagens

  Ajuda
Avançado
Programando com classes e camadas   Lista de tópicos   < Tópico anterior  |  Próximo tópico >
Responder  | 
Re: [python-brasil] Programando com classes e camadas

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.

[ ]s
Luciano


2010/3/10 luchyanus <luchyanus@...>:
> Caros amigos,
> Não sei se esta questão está no escopo da lista. Contudo, tenho observado o
altíssimo nível das discussões e, se o local for apropriado, gostaria de
ouvi-los sobre o assunto.
> Vocês deram-me conselhos maravilhosos no que tange ao estudo da MVC e do CRC.
Muito obrigado, dica realmente preciosa. Para meus programas, passei a adotar 3
arquivos básicos: um para o M, outro para o V e o último para o C. E a eles
acrescentei um para o T de teste.
> Digamos que tenha o objeto "tarefa". Bem, sei que tarefas devem ser
persistidas (M), que devem ser mostradas (V) e, por fim, devem ser controladas
(C). Mas se adotei como divisão fundamental o MVC, então, não posso ter um
objeto "tarefa". Mais provável é que tenha três objetos "tarefa": um para cada
camada.
> Na primeira camada (M), vêem-se métodos para adicionar, remover, atualizar e
listar tarefas. Na segunda camada (V), poderia colocar os métodos para a criação
da aba "tarefa", visto que o aplicativo tem interface em abas. Na terceira
camada (C), poderia acrescentar métodos para, de fato, verificar se uma tarefa
pode ser adicionada, removida, atualizada ou listada.
> A listagem é meramente exemplificativa. Mas o que gostaria de saber é se este
raciocínio está correto: classes somente se definem no interior de camadas, não
sendo possível que uma classe tenha métodos ou propriedades simultaneamente de
M, V e C.
> Não desejo regras absolutas, mas simplesmente caminhos que me ajudem a
progredir.
>
>
>
>
> ------------------------------------
>
> ,-----------------------------------------------------------.
> | Antes de enviar um e-mail para o grupo leia:              |
> | http://www.pythonbrasil.com.br/moin.cgi/AntesDePerguntar  |
> | E se você é usuário do BOL lembre-se de cadastrar o       |
> | e-mail do grupo na lista branca do seu sistema anti-spam. |
> `-----------------------------------------------------------´Links do Yahoo!
Grupos
>
>
>



--
"""
Many were increasingly of the opinion that they'd all made a big
mistake in coming down from the trees in the first place. And some
said that even the trees had been a bad move, and that no one should
ever have left the oceans. (DA/HHGTTG)
"""



Qua, 10 de Mar de 2010 5:06 pm

hiper_luciano
Offline Offline
Enviar e-mail Enviar e-mail

 | 
Expandir mensagens Nome/E-mail Classificar por data

Caros amigos, Não sei se esta questão está no escopo da lista. Contudo, tenho observado o altíssimo nível das discussões e, se o local for apropriado,...
luchyanus
Offline Enviar e-mail
10 de Mar de 2010
5:00 pm

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...
Luciano Ramalho
hiper_luciano
Offline Enviar e-mail
10 de Mar de 2010
5:35 pm

2010/3/10 Luciano Ramalho <ramalho@...> ... Luciano, Se o V e C estão altamente acoplados, por que esta "separação" ainda existe? Se é que existe... ...
Marcos Douglas
marcos_douglas
Offline Enviar e-mail
10 de Mar de 2010
5:38 pm

2010/3/10 Marcos Douglas <md@...> ... Ese tipo de divisão é sempre uma questão controversa. Há muitas formas de segmentar uma solução, e há...
Carlos Ribeiro
carribeiro
Offline Enviar e-mail
10 de Mar de 2010
6:01 pm

... Em aplicações Web tradicionais é mais fácil justificar a separação V/C. Em aplicações GUI ou aplicações Web intensivas em AJAX, separar o V do C...
Luciano Ramalho
hiper_luciano
Offline Enviar e-mail
10 de Mar de 2010
6:05 pm

Há pessoas mais qualificadas na aqui na lista, mas vou dar meu pitacos. ... Na imensa maioria dos casos, que parece ser o seu, o programa responde a eventos....
Eduardo Willians
edujurista@...
Enviar e-mail
11 de Mar de 2010
6:32 pm

2010/3/10 Eduardo Willians <edujurista@...> ... Nossa, essa "explicação" me deixou mais confuso ainda... <sarcasmo>Esses trilhões de objetos não...
Rodolfo S. Carvalho
rodolfobassboy
Offline Enviar e-mail
11 de Mar de 2010
6:40 pm

Realmente, entope a memoria mesmo... risos Eu particularmente nem me interesso mais se estou seguindo ou não o modelo MVC, M-VC, MVT, MVC2, etc. Eu tento...
Marco Catunda
marcocatunda
Online agora Enviar e-mail
11 de Mar de 2010
11:08 pm

... Mas se você achar e não pensar duas vezes, não é muito provável que seu "achismo" seja inviável a longo prazo? Trabalho num projeto que tem 32...
Danilo Cabello
danilo.cabello
Offline Enviar e-mail
12 de Mar de 2010
1:48 am

Com toda a certeza. Como o nosso amigo Luciano descreveu sobre o padrão MVC. Foi inventado a 20 anos atras pelos criadores do Smaltalk e hoje eles admitem que...
Marco Catunda
marcocatunda
Online agora Enviar e-mail
12 de Mar de 2010
2:55 am

2010/3/11 Marco Catunda <marco.catunda@...> ... Foi mais ou menos isso que eu quis dizer antes: para decidir não usar um padrão, ou para inventar um...
Carlos Ribeiro
carribeiro
Offline Enviar e-mail
12 de Mar de 2010
8:49 am

... Discordo da praticidade do MVC, pelo menos no que diz a projetos web, a estrutura encaixa como uma luva....
Danilo Cabello
danilo.cabello
Offline Enviar e-mail
12 de Mar de 2010
1:30 pm

Danilo, Existe um exemplo simples que, ao meu ver, não se encaixa muito bem no padrão MVC. O exemplo seria exibir uma lista de notas numa tabela e no final...
Marco Catunda
marcocatunda
Online agora Enviar e-mail
14 de Mar de 2010
1:51 pm

... No manager do seu Model (se estivermos utilizando como exemplo o Django) ... Concordo, a view (template no Django) deve simplesmente produzir a saída com...
Danilo Cabello
danilo.cabello
Offline Enviar e-mail
14 de Mar de 2010
3:53 pm

Bem, no meu pouco entendimento sobre OO, eu diria que média seria um método de classe, então isso deveria estar no model. Veja que até o Django, por...
Luciano Rodrigues da ...
lucrodsilva
Offline Enviar e-mail
18 de Mar de 2010
1:28 pm

Luciano, O seu entendimento sobre OO é o mesmo que o meu. Eu também iria implementar isso no Model. O principal problema não é exibir uma lista...
Marco Catunda
marcocatunda
Online agora Enviar e-mail
21 de Mar de 2010
1:35 pm
Avançado

Copyright © 2010 Yahoo! do Brasil Internet Ltda. Todos os direitos reservados.
Política de Privacidade - Termos do Serviço - Diretrizes - Ajuda