Eu sei que existem vários tópicos sobre MVC mas eu ainda estou com algumas dúvidas, e gostaria de uma comparação com VB ( eu programo em vb, mas estou mudadno para java).
Em vb temos 3 camadas… 1 front end, 2 regra de negócio (dlls, etc), 3 banco de dados.
No padrão MVC qual camada faria o papel das camadas do VB?
A parte de view eu entendi, seria o front end, mas o controller e model que não sei, por que fora essas três camadas ainda teria a do banco de dados certo? Só para esclarecer um pouco
Eh exatamente a mesma coisa. MVC nao eh do Java, eh apenas um padrao, sem estar ligado a alguma tecnologia em especifico.
Rafael
Bani
Eu discordo um pouco sobre ser a mesma coisa… Na maior parte das vezes, o controler acaba usando (e muito) as propriedades de orientação a objetos (interfaces, superclasses, etc), para que sua utilizade seja realmente ajudar no código e não atrapalhar.
Sendo assim, uma linguagem que nem tem orientação a objetos acaba ficando mais com um front-end e uma lógica apenas. Pode até dividir “lógica e acesso a banco”, mas no MVC eu acho que ambos caem no “M”.
L
LeandroSP
Eu tenho tido um pouco de dificuldade pois o vb não é realmente orientado a objetos , então muda algumas coisas. Alguem poderia me indicar um bom livro sobre padrões de projeto, mas não um livro teórico, queria algo mais prático, que mostrasse o desenvolvimento utilizando MVC (ou algum outro padrão mais utilizado se houver).
Rafael_Steil
Bom Bani, nao eh exatamente a mesma coisa, mas no fundo a ideia eh a mesma, sao as mesmas 3 camadas. Como MVC nao diz explicitamente onde cada coisa deve necessariamente ficar, fica a cargo ( ou culpa ) do desenvolvedor implementar.
Em relacao ao livro, nao conheco nenhum especifico sobre MVC. MVC eh realmente simples. O que voce tem que fazer eh pegar o editor de codigos e comecar a codar, para ver como funciona… logicamente voce nao vai fazer o sistema perfeito na primeira tentativa, mas aos poucos vc vai pegando… eh o processo natural de aprendzagem.
Nao eh verdade. Primeiro, MVC nao eh somente para web, pode ser para qualquer caso aplicacavel… ( Swing, por exemplo ).
Nao existe uma regra dizendo exatamente como deve ser implementado MVC. Por exemplo, para a camada de dados da para implementar DAO em conjunto. Para a camada do Controller, eh mto comum usar Command… MVC raramente eh usado sozinho.
EJB nao roda somente no JBoss, como da a entender a tua resposta.
Elvis.The.Pelvis
Rafael tem razão. O MVC surgiu com a Smalltalk no período jurássico da computação. O MVC originalmente era orientado a eventos e, como não possuímos tal coisa na web, ele foi adaptado para as arquiteturas Model 1 (mais simples) e Model 2 para poder ser utilizado na web.
oazuc
Pelvis,
vc recomenda algum livro sobre Smalltalk que fale do MVC?
Creio que nao. JBoss nao eh a RI para J2EE ou mesmo EJB. Eles ate mesmo estavam “se batendo” ha um tempo atras para conseguir o reconhecimento oficial da Sun (para serem um servidor J2EE “Sun Certified”). Agora nao sei como esta esse processo - talvez ja ate tenham conseguido. Mas isso nao faz dele o “contentor oficial”.