2010-01-20 20 views
5

Sul Domain-Driven Design website vedo:Significato delle infrastrutture e codice applicativo in Domain-Driven Design

concentrare tutto il codice relativo al il modello di dominio in un solo strato e isolarlo da parte dell'utente interfaccia, applicazione e codice di infrastruttura. Gli oggetti del dominio, liberi del responsabilità di mostrare se stessi, la memorizzazione di se stessi, task applicativi di gestione e così via , può essere incentrata sulla esprimendo il modello di dominio. Ciò consente al modello di evolversi di essere abbastanza ricco e chiaro sufficiente per acquisire la conoscenza aziendale essenziale e metterlo in funzione.

Cosa "entra" nel codice dell'infrastruttura? Questo significa framework di supporto (per la registrazione, ad esempio)?

Suppongo che "codice dell'applicazione" indichi gli oggetti dominio (ovvero il modello di dominio)?

risposta

3

Il codice di infrastruttura sarebbe implementazioni di repository, ad esempio. È possibile avere repository in memoria o in letargo che vivono nel livello infrastruttura, mentre le loro interfacce vivono nel livello dominio.

Il codice di applicazione controlla gli oggetti del dominio. Definisce servizi che accettano i comandi dell'utente e invocano la logica di business sugli oggetti di dominio, ma nessuna logica aziendale vive in quel livello.

+0

Quindi i repository (nel senso del modello di progettazione, non, a quanto ho capito, nel senso di repository nella risposta) in genere vivono nel modello di dominio o in un componente di accesso ai dati separato? – Ben

+0

... e cose come contenitori IOC, sottosistemi di raccolta di metriche e log in genere sono descritti come residenti nel codice infrastruttura "layer"? – Ben

Problemi correlati