Falk Sippach

10.12.2019

13:30 - 14:15

Stratus

Session

  IT-Tage 2021
  •  Live-Streaming von über 200 Vorträgen in 18 Subkonferenzen.
  •  365 Tage On-Demand-Zugriff auf 260 Vortragsvideos und ein umfangreiches Archiv an Informationen der Konferenz.
  •  Weitere 7 Remote-Konferenzen in 2022.

Java ist keine funktionale Sprache, aber dank Streams und Lambdas kann man nun seit einiger Zeit auf funktionale Art und Weise programmieren. Reicht das etwa schon, um ausdrucksstärkeren und besser lesbaren Sourcecode zu entwickeln? Passt dieses Programmierparadigma überhaupt zur imperativen Denkweise von uns Java-Entwicklern?

Anhand eines Real-World-Szenarios machen wir uns mit den fehlenden Puzzlestücken der funktionalen Programmierung vertraut. Dabei geht es um Value Types, Pattern Matching, Monaden (Try, Either, Optional, Validierung), Bedarfsauswertung, partielle Funktionsaufrufe, Currying, Funktionskomposition, persistente Datenstrukturen, Seiteneffektfreiheit, referentielle Transparenz und einiges mehr. Wir diskutieren Lösungsansätze in Java und werfen vor allem einen Blick auf nützliche Bibliotheken wie Immutables und Vavr.