Sto imparando DDD e io sono un po 'perso nel livello di infrastruttura:DDD servizi di infrastruttura
quanto ho capito, "tutte le buone applicazioni DDD" dovrebbe avere 4 strati: Presentazione, Applicazione, Dominio e delle Infrastrutture. È necessario accedere al database utilizzando i repository. Le interfacce del repository devono trovarsi in livello di dominio e implementazione del repository - in Infrastruttura (riferimento DDD: Where to keep domain Interfaces, the Infrastructure?).
Applicazione, dominio e infrastruttura devono/possono avere servizi (riferimento www.lostechies.com/blogs/jimmy_bogard/archive/2008/08/21/services-in-domain-driven-design.aspx), ad esempio EmailService nel livello Infrastruttura che invia messaggi di posta elettronica.
MA, all'interno del livello Infrastruttura abbiamo implementazioni di repository, che vengono utilizzate per accedere al database. Quindi, in questo caso, i repository sono servizi di database? Qual è la differenza tra servizio di infrastruttura e repository?
Grazie in anticipo!
Beh, forse hai frainteso la mia domanda, o ho frainteso la risposta. All'interno del livello dell'infrastruttura, se disponiamo di un servizio che si occupa dell'API di posta, lo chiamiamo "servizio di posta elettronica", ma il codice per recuperare i dati dal database è chiamato "implementazione del repository". Non è lo stesso tipo di "servizio di infrastruttura"? – Zygimantas