Domain-Driven Design (DDD) ist ein Ansatz zur Entwicklung von Software für komplexe Anforderungen, indem die Implementierung mit einem sich entwickelnden Modell verbunden wird.
Ich habe CQRS 1 von Poor-Man schon seit einiger Zeit angepasst, weil ich die Flexibilität liebe, granulare Daten in einem Datenspeicher zu haben, die großartige Analysemöglichkeiten bieten und damit den Geschäftswert steigern, und bei Bedarf auch Lesevorgänge, die denormalisierte Daten enthalten, um die Leistung zu steigern . Leider hatte ich …
Ich möchte Domain-Driven-Design starten, aber es gibt einige Probleme, die ich lösen möchte, bevor ich anfange :) Stellen wir uns vor, ich habe Gruppen und Benutzer, und wenn der Benutzer einer Gruppe beitreten möchte, rufe ich die groupsService.AddUserToGroup(group, user)Methode auf. In DDD sollte ich tun group.JoinUser(user), was ziemlich gut aussieht. …
Nachdem ich Hibernate für die meisten meiner Projekte ungefähr 8 Jahre lang verwendet habe, bin ich bei einem Unternehmen gelandet, das von seiner Verwendung abrät und möchte, dass Anwendungen nur über gespeicherte Prozeduren mit der Datenbank interagieren. Nachdem ich dies einige Wochen lang getan habe, konnte ich kein umfassendes Domänenmodell …
Ich versuche, eine Anwendung zu entwerfen, die eine komplexe Geschäftsdomäne aufweist und eine REST-API unterstützen muss (nicht ausschließlich REST, sondern ressourcenorientiert). Ich habe einige Probleme damit, das Domänenmodell ressourcenorientiert darzustellen. In DDD müssen Clients eines Domänenmodells die prozedurale Ebene "Application Services" durchlaufen, um auf alle Geschäftsfunktionen zuzugreifen, die von Entities …
Bei vielen Ansätzen zur Softwareentwicklung wie agilen Methoden, domänengesteuertem Design und objektorientierter Analyse und Design wird empfohlen, einen iterativen Ansatz für die Entwicklung zu wählen. Wir sollten unser Domain-Modell also nicht gleich beim ersten Start des Projekts fertigstellen. Stattdessen überarbeiten wir das Modell im Laufe der Zeit, weil wir mit …
Das anämische Domänenmodell wird von Martin Fowler als Antimuster im domänengetriebenen Design beschrieben. Um Geschäftslogik auf den Domänenmodellen zu haben, werden häufig Domänendienste verwendet. Das Injizieren von Domänendiensten in Domänenmodelle wird von Vaughn Vernon jedoch als schädlich eingestuft (siehe "Implementieren von domänengesteuertem Design", Seite 409). Meiner Meinung nach sind diese …
Wie passt das Muster der Verwendung von Befehlshandlern für den Umgang mit Persistenz in eine rein funktionale Sprache, in der IO-Code so dünn wie möglich gestaltet werden soll? Bei der Implementierung von Domain-Driven Design in einer objektorientierten Sprache wird häufig das Command / Handler-Muster verwendet , um Statusänderungen auszuführen. In …
Stellen Sie sich ein System vor, das DDD verwendet (auch: jedes System, das ORM verwendet). In nahezu jedem Anwendungsfall besteht der Sinn eines jeden Systems darin, diese Domänenobjekte realistisch zu manipulieren. Ansonsten gibt es keine wirklichen Auswirkungen oder Ziele. Wenn Sie ein unveränderliches Objekt ändern, wird nach der Beibehaltung des …
Ich versuche, die Struktur meiner Anwendung in VS einzurichten, und ich möchte sie auf ein vernünftiges Maß "testen" und zukunftssicher machen. Diese Anwendung wird eine WPF-Neuschreibung einer alten Winform-Anwendung sein, die keine Konventionen befolgt hat. Keine Ebenen, Ebenen, Akronyme usw. Es ist eine ziemlich große Unternehmensanwendung. Ich hatte vor, Linq …
Ich bin über Greg Youngs Vortrag gestolpert. 7 Gründe, warum DDD-Projekte scheitern, wo er etwas erwähnt, das er um 7:20 DDD-Lite nennt. Zusammenfassend sagt er, dass einige DDD als Mustersprache (Entitäten, Repositorys, Wertobjekte, Services usw.) verwenden, ohne etwas anderes im Zusammenhang mit DDD zu tun. Er postuliert, dass 60% oder …
Ich habe kürzlich Hohpes und Woolfs Enterprise Integration Patterns gelesen, einige von Thomas Erl's Büchern über SOA und mir verschiedene Videos und Podcasts von Udi Dahan et al. zu CQRS- und ereignisgesteuerten Systemen. Systeme an meinem Arbeitsplatz leiden unter hoher Kopplung. Obwohl theoretisch jedes System eine eigene Datenbank hat, gibt …
Zum Beispiel, wenn Sie ein Register Formular abgesendet hat , müssen Sie in der überprüfen Domain Model( WriteModelin CQRS) , dass es in einem gültigen Zustand (zB E - Mail - Adresse Syntax, Alter, etc.) ist. Dann erstellen Sie eine Commandund senden sie an eine Command Bus. Ich verstehe, dass …
Ich habe in einer relativ komplexen Anwendung mit 10 Datenbanktabellen (Aggregate, Entitäten / Wertobjekte) gearbeitet und DDD angewendet. An diesem Punkt scheint es sich im Grunde genommen um DDD-Lite zu handeln, was bedeutet, dass es Anwendungs- / Domänendienste, das Domänenmodell (Entitäten, Wertobjekte) und Repositorys gibt. Ich habe ein Buch über …
Bei der Beurteilung eines potenziellen Projekts bei der Arbeit schlug ich vor, dass es vorteilhaft sein könnte, einen domänengetriebenen Entwurfsansatz für sein Objektmodell zu verwenden. Das Projekt hat keine übermäßig komplexe Domäne, daher hat mein Kollege Folgendes auf mich geworfen: Es wurde gesagt, dass DDD in Fällen vorteilhaft ist, in …
Wenn Sie dem domänengesteuerten Entwurf (Domain-driven Design, DDD) folgen, ist es richtig, wenn ein Stammaggregat einen Verweis auf eine interne Entität enthält, die zufällig die Stammentität in einem separaten Aggregat ist? Ich glaube, das ist nicht richtig, hauptsächlich wegen dieser Regel im Blue Book : Nichts außerhalb der AGGREGATE-Grenze kann …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.