Das Ausdrucksproblem: Elegante Lösungen in OOP und FP
2025-09-07
Dieser Artikel befasst sich mit dem "Ausdrucksproblem" im Software-Design: Wie fügt man neue Datentypen und Operationen hinzu, ohne bestehenden Code zu ändern? Der Autor verwendet Beispiele in C++ und Haskell, um die Grenzen der objektorientierten und funktionalen Programmierung bei der Lösung dieses Problems zu veranschaulichen. Anschließend werden elegante Lösungen unter Verwendung des Besucher-Musters und der Multimethoden und Protokolle von Clojure untersucht. Der Ansatz von Clojure nutzt geschickt die Leistungsfähigkeit offener Methoden, trennt Methodendefinitionen von Typdefinitionen und ermöglicht so eine flexible Erweiterung ohne Änderung des bestehenden Codes.
Entwicklung
Ausdrucksproblem