Ad esempio, abbiamo due oggetti dominio: Cell e Body (come nella cella e nel corpo umani).In Domain Driven Design quando un'entità clona se stessa che la aggiunge al suo contenitore?
La classe Body è solo una raccolta di celle, ad es.
class Body
{
IList<Cell> cells;
public void AddCell(Cell c) { ... }
public void RemoveCell(Cell c) { ... }
}
La cella ha un metodo di divisione, che crea internamente un clone di se stesso, ad es.
Class Cell
{
public Cell Split()
{
Cell newCell = new Cell();
// Copy this cell's properties into the new cell.
return Cell;
}
}
Ora, in DDD quando le divisioni cellulari voglia:
- La cella aggiungere la cella appena creato al corpo (il che significherebbe che ciascun oggetto cellulare tenuto un riferimento al suo corpo di contenimento)?
- Oppure il livello di servizio che ha ricevuto la richiesta di chiamata iniziale chiamata Chiama, raccoglie la cella restituita e la aggiunge al Corpo? (sembra un design più anemico usando i controller piuttosto che gli oggetti di dominio)
- O il Body deve contenere un metodo SplitCell?
Grazie in anticipo.
La divisione cella crea una copia esatta della cella con diciamo 1 differenza minore. Un altro attore all'interno del sistema che è solo a conoscenza delle cellule attiva la divisione. Questo attore non sa davvero dell'esistenza del corpo. – ng5000
Un esempio bizzarro è più semplice da spiegare rispetto al dominio reale che sto modellando. Ho provato a farlo con un semplice esempio astratto del problema con cui ho a che fare. – ng5000