Funktionale Programmierung in Java: Von Lambdas zu Monaden
Funktionale Programmierung in Java: Von Lambdas zu Monaden
Zusammenfassung:
Das Buch „Funktionale Programmierung in Java“ ist ein praktischer Leitfaden für Entwickler, die über den imperativen Stil hinausgehen und moderne funktionale Ansätze im Java-Ökosystem erlernen möchten. Der Autor, Alexey Sokolov, Senior-Entwickler mit 10 Jahren Erfahrung, führt den Leser konsequent von grundlegenden Konzepten zu fortgeschrittenen Mustern.
Worum geht es in diesem Buch?
Das Buch behandelt alle wesentlichen Aspekte der funktionalen Programmierung (FP) in Bezug auf Java:
- Lambda-Ausdrücke und funktionale Schnittstellen – wie man kompakte anonyme Funktionen schreibt und integrierte Schnittstellen (Predicate, Function, Consumer, Supplier) verwendet.
- Stream API – Pipeline-Verarbeitung von Sammlungen: map, filter, reduce, flatMap, parallele Streams und Leistungsoptimierung.
- Option, Either und Try – Umgang mit null-sicherem Code und Fehlerbehandlung ohne Ausnahmen (funktionaler Ansatz).
- Monaden und Funktoren – von der Theorie zur Praxis: wie man monadische Konstrukte in Java anwendet (Optional, CompletableFuture, Drittanbieter-Bibliotheken Vavr, functionaljava).
- Reine Funktionen und Unveränderlichkeit – Entwurf unveränderlicher Datenstrukturen und Refactoring von Legacy-Code.
- Parallelität und Nebenläufigkeit – funktionale Ansätze für Multithreading: CompletableFuture, reactive streams, Aktoren.
Für wen ist dieses Buch?
- Java-Entwickler auf Junior- und Middle-Niveau, die die Codequalität verbessern möchten.
- Architekten, die nach Möglichkeiten suchen, die Kopplung zu verringern und die Testbarkeit von Systemen zu erhöhen.
- Programmierer, die von anderen Sprachen wechseln (Scala, Kotlin, JavaScript) – um zu verstehen, wie man FP in Java anwendet.
- Studenten und Dozenten von Kursen zu modernem Java.
Was werden Sie lernen?
- Wie man Schleifen und bedingte Anweisungen durch funktionale Konstrukte ersetzt.
- Wie man Code schreibt, der leichter zu testen, zu debuggen und zu warten ist.
- Wie man Multithreading ohne Sperren und Race Conditions effektiv einsetzt.
- Wie man funktionale Bibliotheken (Vavr, Javaslang, RxJava) in ein bestehendes Projekt integriert.
- Wie man Seiteneffekte vermeidet und vorhersagbare Funktionen schreibt.
Alle Beispiele im Buch sind mit vollständigem Code und Kommentaren versehen. Jedes Kapitel endet mit praktischen Aufgaben und Fragen zur Selbstkontrolle. Das Buch eignet sich sowohl zum Selbststudium als auch als Lehrmaterial in Weiterbildungskursen.
„Funktionale Programmierung in Java“ ist nicht nur eine Übersetzung akademischer Konzepte, sondern ein echtes Werkzeug zur Verbesserung der täglichen Arbeit. Nach der Lektüre werden Sie in der Lage sein, prägnanteren, sichereren und parallelen Code zu schreiben und dabei die volle Leistungsfähigkeit von modernem Java (8+) zu nutzen.