iaew galera…
essa eh uma duvida muita xata, rsss
pelo q eu aprendi nesse tempo programando OO em Java e que toda modelagem tem que levar em conta a complexibilidade da aplicação…
e aquela velha historia de tentar matar um mosquito com uma bazuca…
A OO tradicional mais conservadora ve q colocar esse tipo de validação nos setter é “legal” pois previne erros… porem qse ninguem faz esse tipo de coisa… preferem fazer essas validações na camada de negocios… ou seja, entre a tela e o setter tem um cara no meio que garante q os dados atribuidos nos setter são vdd… no caso de frameworks como JSF… bem ai e outra estoria pq ele faz o binding e utliza os criterios de validação dos campos definidos na pagina… bem essa e outra estoria =)
Pelo q pude perceber no desenv. web o conceito de MVC e muito forte eles repeitam muito isso…
logo, View apenas exibi os dados… model e o lugar q são colocadas as regras de negocios e o controle o cara q faz a ligação entre a view e o model… portanto e dificil vc encontrar um try catch na view… geralmente o try catch ficaria no controle q manipularia a exception e devolveria uma msg “camarada” para a view exibi-la…
um exemplo… vc recebeu o famoso nullpointerexception na sua regra de negocio… dai ele subiu pro controler… ele n pode passar essa exception para view… ele trata ela e devolve para view… tipo… “Houve um erro ao validar cadastro de alunos” e usuario jamais vai conhecer um nullpointerexception… entenderam…
eu costumo comparar o MVC assim a View representa o “usuario”, Controler a “logica de controle de funcionalidade” e o Model a “regra de
negocio da app”
geralmente utilizamos camadas em app web… tipo aqui eu uso… View(jsp) >>> controler(framework) >>> Model (regra de negocio)…
qnd eu clico em consultar…
View >>> Operação >>> ServiceProvider >>> ServiceFactory >>> ClassenegocioImpl >>> DaoFactory >>> DAO >>> BD
putz escrevi uma carta… acho q dei muitas voltas ai neh… mais vale a leitura…
flw t+ abs