Pessoal!
Pergunta que não quer calar: ONDE IMPLEMENTAR AS REGRAS DE NEGÓCIO?
Onde trabalho (ambiente WEB) temos a seguinte arquitetura:
Modelo MVC, onde:
utilizamos STRUTS.
VIEW: somente JSP com algumas validações javascript, e alguns componentes (ex: listagem).
ACTION: É A LETRA “C” (CONTROLLER) do modelo MVC? AQUI QUE É IMPLEMENTADA AS REGRAS DE NEGÓCIO ou somente tratamento das requisições e redirecionamentos?
MODEL: É A LETRA “M” (MODELO) do modelo MVC? OU AS REGRAS DE NEGÓCIO DEVE SER IMPLEMENTADAS AQUI?
Temos também:
DTO: que é o espelho das tabelas (cada tabela tem seu respectivo DTO)
FORM: representar o Formulário
DAO: nossa camada de persistencia
RESUMINDO:
JSP faz uma requisição para a ACTION que por sua vez captura os dados do Form, carrega os respectivos DTO´s e chama um método na MODEL (ex: listarCliente) que vai em uma DAO respectiva (que faz todo o acesso ao Banco). A DAO retorna para a MODEL que retorna para a ACTION que faz o devido redirecionamento.
A Dúvida é: Onde implementar as REGRAS DE NEGÓCIO?
Ex: Se eu tenho que adicionar uma informação a mais (que não está no banco) em uma combo-box, onde devo implementar? na ACTION ou na MODEL?
Um simples if é uma REGRA DE NEGÓCIO?
Escrevi demais…