[quote=rogelgarcia][quote=ViniGodoy][quote=rogelgarcia]Para mim, o modelo anemico é completamente válido…
Exemplo, suponhamos uma classe Endereco.
Nessa classe temos os atributos, rua, cep, bairro, etc.
A classe Endereco nada mais é do que um tipo de dados complexo. Ou seja, não tem que fazer nada mesmo, a nao ser, guardar as informacoes.
[/quote]
Por outro lado, como ficaria o BO da classe endereço? Seria praticamente vazio, no máximo fazendo delegação para o VO (ou uma cópia do VO, dependendo da estratégia que você use). Qualquer um desses três casos (classe final vazia, delegação pura e simples ou cópia de classe) é um sintoma de má modelagem.[/quote]
VO seria o próprio Endereco
o BO teria métodos para manipulacao do Endereco, mas nao seria delegacao…
[/quote]
Uma entidade deve conter apenas as coisas que a compoem… qualquer validação ou algo do genero deve ser feita em classe específica, pode ser uma BO. O design pattern BO acessa as daos ou outros metodos da BO ou ainda outra camada da aplicação que esteja em, digamos… “uma camada a frente”, porém jamais retornando… a ideia eh simples
View -> Controller -> Facade/BO -> BO -> DAO -> VO
qualquer coisa do genero
VO -> DAO
DAO -> BO
VO -> BO
Facade -> Controller
DAO -> Facade
não pode ocorrer
uma camada só pode chamar sua camada subsequente