Ich bin ein wenig verwirrt mit dem Konzept der Aggregatwurzel in DDD. Die Theorie sagt dann, es sollte eine aggregierte Wurzel sein, die für die aktuelle Operation relevant ist.DDD: Wie viele Aggregatwurzeln brauche ich?
Zum Beispiel habe ich ein root-Konto, das eine Firma darstellt. Es hat Adresse, Benutzer, die zu dem Konto gehören, einige andere Eigenschaften.
Und ich habe mehrere Seiten; Eine davon ist die Verwaltung von allgemeinen Informationen wie Name, E-Mail, Telefon ... Eine weitere Möglichkeit besteht darin, Adresse zu verwalten. Eine weitere, um alle Benutzer anzuzeigen (und bearbeiten Benutzerinformationen, die wahrscheinlich auch unter Account-Objekt ist)
Im ersten Fall ist mir egal, Adresse, in der zweiten ist mir egal, Name, E-Mail .. ..
Benötige ich zwei separate Account-Objekte oder brauche ich nur einen Account? (Das Modell kann komplizierter sein, als ich es beschrieben)
So zum Beispiel ich mit Klassen kann am Ende: BasicAccountInformation, AccountAddress, AccountUsers .... Oder nur ein einziges: Konto, das alle Daten enthält?
Was ist der richtige DDD-Ansatz? Was ich denke, in einem Fall werde ich eine sehr komplexe Klasse bekommen, die viele Eigenschaften und Logik enthält; oder viele einfache Klassen mit 2-10 Eigenschaften pro Klasse.
Vielleicht sollten Sie Ihre begrenzten Kontexte betrachten ... –
Ich denke, Sie finden meine [Aggregate Explained] (http://blog.sapiensworks.com/post/2016/07/14/DDD-Aggregate-Decoded- 1) Trilogie nützlich für Ihr Problem. Lange Rede, kurzer Sinn, Sie sollten ein Aggregat mit seiner Wurzel pro Geschäftsfall haben. Sie können mehr als ein Aggregat haben, das dasselbe Konzept darstellt, eines für jeden Befehlsgeschäftsfall, der dieses Konzept betrifft – MikeSW
Dank MikeSW, die Blogposts fügen Klarheit zu diesem Thema hinzu. –