Le tabelle di database di riferimenti incrociati hanno un posto nella progettazione orientata al dominio?

0

Prima alcuni background. Diciamo che abbiamo un sistema in cui un cliente sta effettuando un ordine in un'interfaccia web. Gli articoli ordinati dal cliente possono essere valutati in vari modi. A volte include il costo della consegna e talvolta non lo è affatto. Tale tariffazione dipende in modo efficace da una varietà di fattori, tra cui il modello di determinazione del prezzo del venditore, i singoli contratti del venditore con i clienti e i contratti del fornitore con i propri fornitori. Supponiamo che, una volta che un cliente effettua un ordine per un particolare articolo e scelga un contratto, se presente, il metodo di consegna può essere determinato da variabili su tali contratti. Questi metodi di consegna vivono anche nella propria tabella nel database e hanno varie proprietà consumate a valle.

È logico che un riferimento incrociato o una tabella di ricerca memorizzino tali informazioni. Quella tabella verrebbe caricata nel dominio e potrebbe quindi essere utilizzata per applicare il metodo di consegna appropriato durante l'elaborazione dell'ordine.

Ha senso nel contesto del design guidato dal dominio? O il mio pensiero è troppo relazionale? È questa logica che dovrebbe essere incorporata nella sua classe / metodo (voglio dire oltre ad applicare i dati della tabella di riferimento incrociato)?

    
posta Mike Cellini 06.06.2014 - 21:20
fonte

1 risposta

1

Le tabelle appartengono raramente a un modello di dominio. Il tuo dominio è ciò che cambia più frequentemente, e quindi preferibilmente dovrebbe essere la persistenza ignorante.

Sembra che potresti mancare un concetto nel tuo dominio. Consiglierei di seguire il tuo ultimo percorso di riflessione incapsulando questa logica nel suo stesso metodo di classe. Tuttavia, se stai progettando domini, ricorda che si tratta più di modellazione che di codifica. Dovresti farlo conoscere al tuo esperto di dominio e identificare il tipo di ruolo che questo concetto svolge nel tuo dominio.

    
risposta data 06.06.2014 - 22:47
fonte

Leggi altre domande sui tag