Aus meiner Erfahrung 3 Wichtigste ist, dass Sie Ihre Domain-Komplex macht:
Größe
Big Domänen neigt Komplexität zu erhöhen. Die Handhabung und Koordination vieler Dinge ist immer schwierig.
Regeln und Invarianten
Domains (auch Domains mit nur ein paar begrenzten Kontext) kann unter Umständen viele Domain-Regeln und Invarianten und/oder viele Nuancen in ihren Anwendungsfällen und zu verarbeiten. Dies erhöht die Komplexität. Regeln, die viele Änderungen in einer Entität oder Interdomains-Ereignissen spammen, sind häufig die komplexen Geschäftsregeln.
Kontext
Kontext Komplexität ist schwer wihtout ein Beispiel zu erklären. Lassen Sie uns in die Tabelle eine Kontextkomplexität einfügen, die sich auf eine Entität mit dem Namen Product
bezieht.
Abhängig vom Kontext; Eine Entität könnte verschiedene Dinge in Ihrer Domain bedeuten. Eine Entität bedeutet nicht das Gleiche für Factory-Kontext, Marketing-Kontext, Sales-Kontext, PostSales-Support-Kontext, etc.
Wenn die Daten, Benutzer-Cases, Prozess, Verhalten, usw. bezogen auf Einheit, in jedem Kontext, Die Komplexität ist sehr unterschiedlich, selbst wenn Sie nur eine Handvoll von Kontext und Entitäten haben. Dies bedeutet normalerweise, dass Sie viele Entities (einen in jedem Kontext) haben, selbst wenn alle von demselben Persistenzspeicher unterstützt werden (im Falle von ER-Speicher dieselben Table/s).
Ich würde sagen, nicht nur für * komplexe Domains * sondern auch für * ambitionierte Projekte, die ein langes Leben anstreben *. Die zweite Anweisung ignoriert die Komplexität. – fabriciorissetto