| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 17/01/2012 07:56:20
|
Rocklee6544
Debugger
![[Avatar]](/images/avatar/5f44a863ff61f87f54a536470a78481b.jpg)
Membro desde: 02/03/2010 03:05:46
Mensagens: 50
Offline
|
Também tenho muita dúvida nessa parte.
Mas para mim
As regras de apresentação devem ficar na tela (
validações de campo preenchido e mascara etc.)
Na camada de controller
Creio que deva ficar apenas as regras de navegação(Redirecionamento)
Na model
devem ficar as regras de negócio e os bens .
Não sei se esse seria o padrão correto mas é o que tenho fixo na cabeça.(Talvez na tela fique apenas as mascaras e a validações de campos deva ficar no controller).
Honestamente não sei qual seria o melhor padrão, vo pegar um bom livro de padrões e dar uma fuçada na net para ver se concluo algumas coisa.
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 17/01/2012 08:02:40
|
Rocklee6544
Debugger
![[Avatar]](/images/avatar/5f44a863ff61f87f54a536470a78481b.jpg)
Membro desde: 02/03/2010 03:05:46
Mensagens: 50
Offline
|
Basicamente o que eu penso é isso
view alguma tecnologia de renderização
JSP,JSTL,JSF,XHTML
controller alguma tecnologia capaz de capturar as requisição fazer algum tratamento se necessário e redirecionar
Actions e Servlet
Modelo
Beans
DAOs
Aqui ainda usamos algumas camadas a mais view,action,facade,model,dao
tenho muita dúvida aonde validar os dados de entrada , mas creio que as regras de negócio sejam mesmo na model
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 17/01/2012 11:29:14
|
Rocklee6544
Debugger
![[Avatar]](/images/avatar/5f44a863ff61f87f54a536470a78481b.jpg)
Membro desde: 02/03/2010 03:05:46
Mensagens: 50
Offline
|
Correção não são camadas a mais...
São as tres camadas mas com responsabilidades divididas em mais classe.
This message was edited 1 time. Last update was at 17/01/2012 11:30:44
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/01/2012 08:23:30
|
wagnerfrancisco
JavaGuru
![[Avatar]](/images/avatar/8557f7303f1355575b6e95d411c9cead.jpg)
Membro desde: 02/10/2007 10:05:02
Mensagens: 243
Localização: Criciúma / SC
Offline
|
Sandro, deve existir centenas de tópicos sobre MVC aqui no GUJ, respondendo e trazendo muitas outras dúvidas. Mas deve-se observar que:
1) MVC não é a respeito da divisão de camadas, portanto dizer que a regra de negócio fica no Model (ou Controller ou View) é estranho.
2) No Domain-Driven Design, existe uma sugestão para divisão de camadas, são elas: Apresentação, Atividade, Domínio e Infra-Estrutura. As regras de negócio estão no Domínio.
3) O padrão Repository faz parte do domínio. É uma coleção mais inteligente, pois "conhece" o domínio e apresenta métodos mais específicos (e não somente métodos genéricos).
4) Para implementar um Repository pode se utilizar um DAO. O DAO não faz parte do domínio, e sim da camada de infra-estrutura.
5) Você pode ter (e possivelmente terá) serviços que encapsulam a lógica da sua aplicação. Isso não significa que você não deve acessar um repository diretamente. Normalmente, quando você deseja somente realizar buscas simples, o acesso é feito direto no repositório, sem um serviço no meio.
Desse modo, o Controller (do VRaptor ou de outro framework) pode acessar tanto um Repository quanto um Service que está encapsulando uma determinada lógica.
Pra entender melhor, veja, por exemplo, o código do JForum 3:
https://github.com/rafaelsteil/jforum3
Falou!
|
http://wagnermezaroba.blogspot.com |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/01/2012 09:24:31
|
j0nny
GUJ Master
![[Avatar]](/images/avatar/2f37ce1ace06a770fab4452db0fe5c5f.png)
Membro desde: 19/09/2009 00:01:57
Mensagens: 1121
Localização: Blumenau - SC
Offline
|
Pense sempre em simplificar as coisas, e não em adicionar camadas só por adicionar.
Eu geralmente uso assim:
Categoria: entidade + lógicas pertinentes ao modelo Categoria, e nada mais
CategoriaDao: somente os SQL's e qualquer outra coisa que somente faça gravar e buscar meus dados. Só!
CategoriaController: server para redirecionar a chamada para o responsável certo, e de acordo com o resultado, escolher qual q melhor view e qual resultado deve ser apresentado para o usuário
CategoriaView: sua view, SWING, HTML ou qualquer outra coisa
CategoriaService: SOMENTE uso essa cama se tenho uma lógica um pouco mais que envolva MAIS de uma entidade.
Espero ter ajudado.
|
@jntsdaniel
github.com/jonatasdaniel
---
AndOrm - Framework ORM para Android
http://github.com/jonatasdaniel/andorm |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 02/02/2012 21:57:57
|
Rocklee6544
Debugger
![[Avatar]](/images/avatar/5f44a863ff61f87f54a536470a78481b.jpg)
Membro desde: 02/03/2010 03:05:46
Mensagens: 50
Offline
|
De maneira geral é exatamente o que o colega disse acima que eu penso.
E acho certo utilizar.
Já teve projeto que eu participei que tinham classes auxiliares de serviço para facilitar o trabalho com as
classes de negócio, tratar repostas mais complexas.
|
|
|
 |
|
|