Revision 556: Domain-Driven Design
Über Domain-Driven Design (DDD) sprechen Hans und Vanessa mit dem Gast Florian Benz, VP of Engineering bei Scalable Capital. Florian beleuchtet dabei vor Allem dir Umsetzung samt Stolpersteinen in der Realität.
Schaunotizen
- [02:14:00] Domain-Driven Design
- Florian begann die ersten Schritte mit Domain-Driven Design (im Folgenden mit „DDD“ abgekürzt) in Teams bei Scalable Capital im Jahr 2019. Zu den größten Herausforderungen zählte, wie man das theoretische Wissen über DDD konkret umsetzen. Bei der Theorie geht Florian speziell auf folgende Teile von DDD ein: Explorativ, strategisch und taktisch. Genauer erläutert er die folgenden Komponenten von taktischem Design: Value Objects, Entities, Aggregrates, Repositories, Services und Factories.
- Ein Hauptbestandteil von DDD ist es, eine gemeinsame Sprache zu entwickeln. Das ist jedoch gar nicht so einfach. Vor allem, wenn die allgemeine Code-Sprache bei Projekten oft Englisch ist, aber die Dokumentationssprache z.B. Deutsch. Doch wenn das Team einmal so weit ist, macht es die gemeinsame Sprache für alle einfacher. Für Entwickler:innen im Speziellen, den Code zu strukturieren und eine sehr wichtige Frage zu beantworten: Wo gehört dieser Code überhaupt hin?
Links
- Patterns, Principles, and Practices of Domain-Driven Design
Scott Millett, Nick Tune - „The Big Blue Book“
Domain-Driven Design: Tackling Complexity in the Heart of Software —Eric Evans - Domain Modeling Made Functional —Scott Wlaschin, KanDDDinsky 2019
- Making Impossible States Impossible—Richard Feldman, elm-conf 2016
- Kotlin and Domain-Driven Design-Value Objects—Florian Benz 2020
- DDD Crew – Welcome to Domain-Driven Design (DDD)
„This project contains definitions of DDD and fundamental concepts to reduce the learning curve and confusion.“