Perché le Entità non sono autorizzate a fare riferimento ad altre entità all'interno di un aggregato ad eccezione della radice?

2

Ho letto in diversi punti questa seguente regola riguardante gli aggregati:

Entities in one aggregate can hold references to any other Aggregate Root, but never to an Entity or Value Object inside the other Aggregate.

Cosa può andare storto se un'entità aveva un riferimento diretto a un'entità in un'altra radice Aggregate?

Qualcuno può spiegare perché questa regola è importante? e preferibilmente illustrare con un esempio, per favore?

    
posta Songo 14.12.2013 - 22:05
fonte

1 risposta

4

Il punto di radice aggregata è quello di incapsulare il comportamento del tutto attraverso la sua radice. Questo semplifica il modello, perché sai che qualsiasi entità in aggregato sarà sempre modificata attraverso una sola entità, la radice. Consentendo alle entità di fare riferimento a un'altra entità, che non è una radice in un aggregato, interrompe l'incapsulamento.

    
risposta data 14.12.2013 - 23:20
fonte