Boa noite senhores,
Estou fazendo o design de uma aplicação, estou tendendo ao DDD. Esta aplicação, possui uma classe de dominio, meramente ilustrativa “Empresa”, supomos também que esta classe Empresa possui três campos:
funcionarios
clientes
acionistas
Digamos que, cada um destes campos é provido por uma TIER diferente, exemplo:
funcionarios = webservice
clientes = Banco de dados
acionistas = arquivo
Então, tenho minha interface EmpresaRepository:
listFuncionariosById..
listClientesByExample..
listAcionistasByNameOrderByAmont..
Logo, minha classe Empresa, receberia uma instancia de uma implementacao de repositorio pelo construtor, e teria seus getters invocando estes métodos… (lazy strategy)
[color=red]dúvida:
É errado eu implementar esta interface “usando” uma classe só? Por exemplo, um método faria chamada a um webservice enquanto outro a um banco de dados… isso me parece um tanto estranho (não muiito coeso a nivel de implementacao), existe uma maneira mais elegante?
[/color]