- Dr. Michael Sperber
- Mittwoch, 23. Mär 2022
- 13:00 - 13:45
- Track 2
- Session
Funktionale Programmierung (FP) - auf der Java-Plattform am besten mit Scala oder Clojure - passt super zu Domain-Driven Design. Für funktionale Programmierer:innen bietet DDD eine Brücke zu funktionierender Applikations-Architektur. In der anderen Richtung erleichtert FP mit seinem Fokus auf Immutability den Umgang mit Aggregaten enorm.
Dieser Vortrag beschäftigt sich mit den Vorteilen FP jenseits des regulären DDD-Kanons, insbesondere mit der Verwendung von Abstraktion. Wo sich DDD auf konkrete Modelle nahe an der Domäne konzentriert, benutzen funktionale Programmierer:innen Abstraktion nahezu reflexartig. Abstraktion ist in der objektorientierten Programmierung immer mit Risiko verbinden, in Verbindung mit FP gibt es aber fast nur Vorteile, weil es dort eine Systematik für den Umgang mit ihr gibt: Kombinatoren und Selbstreferenzen in scheinbar flachen Modellen, algebraische Struktur und Abstraktion über Gemeinsamkeiten. Diese Techniken führen zu einfacheren und flexibleren Modellen als die konkreten OO-Pendants, und fördern oft Aspekte der Domäne zutage, die vorher gar nicht bekannt waren. Dieser Talk zeigt, wie DDD mit diesen Techniken kombiniert und bereichert werden kann.