Molto spesso, come già detto, ci sembra di applicare DDD, ci autoconvinciamo della cosa (anche perché ultimamente se non fai DDD, non sei nessuno ), ma siamo ben lontani dall’applicarlo. Il primo, vero, campanello d’allarme, se di allarme vogliamo parlare, lo possiamo percepire da come è fatto il nostro dominio: se non abbiamo un domain [...]
Posts Tagged ‘DDD’
DDD: sogno o realtà?
“DDD”…un acronimo, mille dubbi. Se da una parte noto un sempre crescente interesse rispetto a questa “metodologia”, dall’altra mi accorgo che iniziano ad insinuarsi vari/parecchi dubbi sulla sua effettiva validità/efficacia tra le persone con cui mi confronto ultimamente. Se ne parla tanto, da tempo, ma di esempi veri e propri ce ne sono sempre pochi, [...]
ValueObject: questo sconosciuto
Uno dei concetti apparentemente più semplici del libro di Evans è quello di value object. Riporto fedelmente la sua definizione per non incorrere in errori e/o omissioni: “…there are cases when we need to contain some attributes of a domain element. We are not interested in which object it is, but what attributes it has. [...]
L’importanza dei contesti
Sollecitato dai commenti di Davide e Francesco, riprendiamo il discorso del post precedente e cerchiamo di analizzare e sviscerare un po’ di più le situazioni che sempre più spesso mi capita di vedere. Quello che Davide e Francesco “contestano” della visione descritta nel post precedente credo sia dettata da una loro visione data-centrica: il dato [...]
Questo database amico-nemico
Sempre più spesso mi trovo a ripetere (e convincermi) che il database deve essere un servizio al servizio dell’applicazione e non viceversa. In ottica DDD questa affermazione diventa ancora più forte: “il database è mio e lo gestisco io” (semi cit.) Molto spesso però, questo modo di vedere le cose stride (eufemismo) con la forma [...]
DDD, Aggregate e FK
I concetti di aggregate e di aggregate root nell’ecosistema di domain driven design ricoprono un ruolo fondamentale: l’aggregate garantisce un raggruppamento logico delle varie entities e value objects. L’aggregate root è il “guardiano” e l’unico punto di accesso ad un aggregate, che identifica una singola unità di persistenza. Il concetto di raggruppamento logico e quindi [...]