Soy nuevo en conceptos como DAO, DAL y Domain Driven Design. Al final, quiero desacoplar la capa de persistencia (base de datos mysql) de mis objetos de negocio y lógica en una aplicación web. Me gustó el concepto DAO, pero me quedé atascado al implementarlo cuando quiero crear un objeto comercial a partir de una base de datos que tenga otras entidades asociadas (representadas por una clave externa en la tabla db).
- ¿Cómo se manejan estas referencias (agregaciones) usando el patrón DAO? Cada ejemplo de DAO en línea es simple y muestra la creación de Business Objects similares a objetos de valor únicamente (sin hacer referencia a otras entidades u objetos de valor). ¿Se hace usando la Inyección de dependencias y, de ser así, dónde se crea la dependencia?
- Al seguir leyendo , supongo que el patrón de Repositorio de DDD ofrece la posibilidad de usar DAO detrás de escena y manejar agregaciones de objetos. Según tengo entendido, solo proporciona la llamada raíz (Entidad con todas las referencias cargadas o cargadas perezosas) al mundo exterior, lo que me parece un buen enfoque. ¿Se recomienda el repositorio cuando se utiliza DAO? ¿Pueden los DAO mismos proporcionar esta funcionalidad manteniendo la ignorancia de persistencia en los Business Objects?
No estoy usando una herramienta ORM y no quiero, ya que me gusta explorar estos patrones básicos directamente