Ho un'entità chiamata Master che è composta da un numero di entità Slave.
Ci può essere un solo Master nel mio database e voglio interrogare i repository per ottenere lo Slave per un dato ID.
Inizialmente ho creato un SlaveRepository e l'ho interrogato tramite id. Sembra a posto e funziona e altri sviluppatori potrebbero usare il mio repository.
Poi ho pensato alle radici aggregate e ho creato un MasterRepository e ho restituito il Master e poi ho fatto un ciclo su quello per ottenere l'entità slave richiesta. Il problema che ho sentito qui è una volta che espongo questo ad altri sviluppatori che dovrebbero fare lo stesso, quindi ho un metodo sul MasterRepository chiamato GetSlaveByID (stringa id) e quindi posso ottenere direttamente lo slave (nasconde la funzionalità del loop ).
Ora, il mio repository dovrebbe restituire uno Slave anche se è chiamato MasterRepository? E ancora più importante qual è la strada giusta da percorrere?
Sono nelle prime fasi del tentativo di applicare DDD e TDD quindi ci sono probabilmente molte cose a cui devo pensare prima di decidere quale sia il modo corretto che immagino.