Eu sou novo em conceitos como DAO, DAL e Domain Driven Design. No final, quero dissociar a camada de persistência (banco de dados mysql) dos meus objetos de negócios e lógica em um aplicativo da web. Gostei do conceito DAO, mas fiquei preso ao implementá-lo quando quero criar um Objeto de Negócios a partir do banco de dados que tenha outras entidades associadas a ele (representadas por chave estrangeira na tabela db).
- Como essas referências (agregações) são tratadas usando o padrão DAO? Todo exemplo de DAO online é simples e mostra a criação apenas de Objetos de Negócios semelhantes a objetos de valor (sem referenciar outras entidades ou objetos de valor). Isso é feito usando a Injeção de Dependências e, em caso afirmativo, onde é criada a dependência?
- Ao ler mais , acho que o padrão de Repositório do DDD oferece a possibilidade de talvez usar DAOs nos bastidores e manipular agregações de objetos. Pelo que entendi, ele apenas fornece a chamada raiz (Entidade com todas as referências carregadas ou carregadas com preguiça) para o mundo exterior, o que parece uma boa abordagem para mim. É recomendado o Repositório ao usar o DAO ou os próprios DAOs podem fornecer essa funcionalidade, mantendo a Ignorância de Persistência nos Objetos de Negócios.
Não estou usando uma ferramenta ORM e não quero, pois gosto de explorar esses padrões básicos diretamente