DDD - Se un oggetto viene salvato nel suo insieme nel database, per definizione è un'entità o è ancora possibile che si tratti di un oggetto valore?

2

Sto imparando a conoscere Domain Driven Design e sto lottando con la domanda se un particolare oggetto debba essere gestito come entità o oggetto di valore.

Tutti i possibili prefissi dei cognomi sono conservati in una tabella del database. (I dati vengono utilizzati in una casella combinata). Dato che ci sono record tenuti di tutti questi prefissi, il prefisso dovrebbe essere visto come un'entità? O è ancora possibile gestirlo come oggetto valore?

    
posta Bart Weber 06.10.2014 - 09:46
fonte

2 risposte

7

Hai già dato la risposta tu stesso nel tuo commento all'altra domanda: se due Prefix oggetti con lo stesso contenuto sono intercambiabili, allora Prefix è (probabilmente) un oggetto valore.

Un'altra regola empirica è: "Dominio prima, seconda infrastruttura", ovvero non lasciare che i problemi relativi all'infrastruttura (qui: chiavi primarie nelle tabelle del database) influenzino il modello del tuo dominio.

    
risposta data 06.10.2014 - 12:48
fonte
-1

Ho pensato che la differenza fosse il collegamento con il database. Quindi un oggetto Entity ha uno stato che mantiene la sua posizione nel DB, mentre un oggetto valore contiene semplicemente i dati.

La scrittura dell'oggetto nel DB termina come una chiamata di aggiornamento in entrambi i casi, tuttavia l'entità utilizzerà la chiave interna per fare riferimento alla riga DB, mentre l'oggetto valore deve ottenere la chiave dai suoi dati ... non c'è molta differenza nella pratica alla fine!

Preferirei un oggetto di valore dato che sono antiquato in quel modo, leggerei solo ciò che era necessario e aggiornare solo quei dati. Meno dati e meno stato sono sempre buoni.

    
risposta data 06.10.2014 - 10:12
fonte

Leggi altre domande sui tag