Domain-driven design: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Corretti parametri ref duplicati |
→Costruire le basi del DDD: Chiarificato e corretto testo riguardante le Entity e i Value Object basandosi sul corrispondente testo inglese |
||
Riga 37:
== Costruire le basi del DDD ==
Nel libro ''Domain-Driven Design''<ref>{{Cita libro |titolo=Domain-Driven Design: Tackling Complexity in the Heart of Software |cognome=Evans |nome=Eric |anno=2004 |editore=Addison-Wesley |isbn=978-0-321-12521-7|accesso=12 agosto 2012 |url=http://www.domaindrivendesign.org/books/evans_2003}}.</ref>, vengono introdotti una serie di concetti chiave e pratiche, come il significato ''ubiquitous language'' cioè un linguaggio unificato creato dagli esperti del dominio che viene usato per descrivere i requisiti di sistema, che inoltre si adatta all'utilizzo da parte di vari attori quali utenti, produttori e sviluppatori. Il libro è fortemente orientato a descrivere lo strato di dominio in un sistema orientato agli oggetti con un'architettura a multistrati. Nel DDD, esistono artefatti per esprimere, creare, e recuperare modelli di dominio:
;Entity: Un oggetto che non è definito dai suoi attributi, ma piuttosto dalla sua identità. Per esempio, la maggior parte delle compagnie aeree distinguono in modo univoco ogni sedile su ogni volo. Ogni sedile è un'entità in questo contesto. Tuttavia, Southwest Airlines, EasyJet e Ryanair non distinguono tra tutti i sedili
;Value Object: Un oggetto che ha una serie di attributi ma non ha identità concettuale.
;Aggregate: Una collezione di oggetti che sono legati insieme da un'entità padre, altrimenti nota come una radice di aggregato. La radice di aggregazione garantisce la consistenza dei cambiamenti compiuti all'interno dell'aggregato proibendo ad oggetti esterni di detenere i riferimenti ai suoi membri interni. Per esempio, quando si guida una macchina, non ci si deve preoccupare di muovere le ruote in avanti, tenere il motore in combustione attraverso l'accensione e del combustibile, ecc .; si sta semplicemente guidando l'auto. In questo contesto, la macchina è un aggregato di diversi altri oggetti e serve come radice aggregata per tutti gli altri sistemi.
;Domain Event: Un oggetto di dominio che definisce un evento (qualcosa che accade). Un evento di dominio è un evento di assoluta importanza per gli esperti di dominio.
|