Funktionale Programmierung mit Java

von Manuel Mauky, Max Wielsch | 27. Januar 2016

java, functional-programming

Mit Java 8 wurden einige Features in die Sprache integriert, die von funktionaler Programmierung inspiriert sind. Im Vortrag Java 8: Lambdas und Streams im Juli 2014 hat Paul uns die technischen Möglichkeiten dazu bereits vorgestellt. Doch ist Java damit nun auch eine Funktionale Sprache? Gibt es überhaupt noch Gründe, andere funktionale Sprachen zu beachten?

In diesem Vortrag möchten wir tiefer in die Materie der funktionalen Programmierung eintauchen und die Konzepte dieses Paradigmas betrachten. Wir werden sehen, wie Java-Programmierer von funktionalen Konzepten profitieren können. Dabei gehen wir unter anderem auf Dinge wie Rekursion, Pure Funktionen, Immutable Datenstrukturen, Monaden und Funktionskomposition ein.

Wir werden aber auch zeigen, wo die Grenzen von Java liegen und warum wir der Meinung sind, dass Java letztlich doch keine wirklich funktionale Sprache ist und weshalb wir unbedingt empfehlen, sich mit funktionalen Sprachen zu beschäftigen. In diesem Sinne werden wir beim darauf folgenden JUG-Treffen die funktionale Sprache "Haskell" vorstellen und dabei viele der hier vorgestellten Konzepte wiederfinden. Außerdem werden wir die Haskell-Variante "Frege" besprechen, die auch auf der JVM läuft.

Materialien:

Links:

Poster: Jürgen trägt einen Anzug und grinst. Er hält eine Tasse Kaffee in der Hand. Auf der Tasse ist das griechische Zeichen Lambda zu sehen.

Manuel arbeitet als Softwareentwickler bei ZEISS Digital Innovation in Görlitz. Er beschäftigt sich mit allen Aspekten der Anwendungsentwicklung, wobei der Fokus auf dem Frontend liegt. Daneben interessieren ihn Themen wie funktionale Programmierung und neue Programmiersprachen. Manuel ist Gründungsmitglied und Organisator der Java User Group Görlitz und steuert hierfür und auch für andere Usergroups und Konferenzen regelmäßig Vorträge bei.

Max Wielsch ist seit 2011 als Software-Entwickler bei der Saxonia Systems AG tätig. Derzeit beschäftigt er sich mit der Migration von monolithischen Architekturen hin zu entkoppelten Service-Architekturen im Kontext von Java-Enterprise-Applikationen. Dabei ist er von Backend bis Frontend involviert. Besondere Begeisterung empfindet er für React als Vertreter von aktuellen JavaScript-UI-Bibliotheken, die einen funktionalen Stil der Entwicklung unterstützen. In seiner Freizeit engagiert sich Max als Organisator der Java User Group Görlitz, um auch in der östlichsten Stadt Deutschlands die Vielfalt von IT-Angeboten zu erhöhen und insbesondere die Community zu unterstützen.



Die Veranstaltung wird durch die Java User Group Görlitz (im iJUG Verband) organisiert.
Die Java User Group Görlitz ist ein Projekt des Digitale Oberlausitz e.V.