Taktisches Domain-Driven Design mit Java & Spring [de]
Die Kernbausteine des taktischen Designs in Domain-Driven Design (DDD) definieren atomare Designkonzepte für Domänenmodelle. Sie definieren Semantik, Regeln und leiten Entwickler:innen dabei, fachlichen Code zu strukturieren und so komplexe Geschäftslogik zu implementieren. Die Umsetzung in Java birgt dabei jedoch einige technische Herausforderungen.
In diesem Workshop betrachten wir verschiedene Ansätze und Werkzeuge, die Entwickler:innen dabei unterstützen, reichhaltige Domänenmodelle in Java zu implementieren: die jMolecules Bibliothek ermöglicht es, DDD Konzepte direkt in Code auszudrücken und bietet darüber hinaus Integration in weitverbreitete Technologien wie Spring, Jackson und Persistenztechnologien. Für Spring Boot Applikationen unterstützt das Moduliths Projekt Entwickler:innen bei der Umsetzung von Modulen, der Interaktion dieser über Events, bei der individuellen Testbarkeit und dem Erzeugen von Dokumentation über diese.
Agenda
Slot 1:
- Organisatorisches, Vorstellung, Überblick
- Domain-Driven Design
- Taktische Muster
- jMolecules als Mustersprachenbibliothek
Slot 2:
- Verifikation von DDD Mustern im Code
- DDD Muster in Adaptern (Persistenz, Serialisierung)
- Vermeiden von Boilerplate mit jMolecules
Slot 3:
- Module (wer bin ich und wenn ja, wie viele?)
- Spring Modulith
- Module in monolithischen Applikationen
- Verifikation des Modularrangements
- Dokumentation
- Integrationstests
Slot 4:
- Interaktionsmuster zwischen Modulen
- Konsistenzgrenzen, Ausführungsmodelle Fehlerszenarien
- Event-basierte Modulkommunikation
- Testen von Eventinteraktion
- (Optional) Zeit als Events
Location & Time
- When? 25. Oct, 09:00 to 17:00
- Where? Disy Informationssysteme GmbH, Ludwig-Erhard-Allee 6, 76131 Karlsruhe
(OSM, Google Maps)
Speaker
Oliver Drotbohm
Spring engineer focused on software architecture, DDD, REST, and persistence technologies More...