23.02.2023

Doppelvortrag: 'Java ohne Seiteneffekte: Mit Frege ist Haskell toolmässig auf der JVM angekommen' und 'Lokales Testen von AWS Serverless Lambda-Funktionen'

Thibault Gagnaux, Jens Knipper

Standardmäßig führen wir momentan unsere Veranstaltungen als Remote-Events durch (weitere Infos unten bei der Registrierung). Wir planen aber bereits wieder erste Präsenzveranstaltungen.

  18:30 bis 20:30 Uhr

 Online (den Link erhaltet ihr nach Anmeldung kurz vor dem Vortrag per E-Mail)

Java ohne Seiteneffekte: Mit Frege ist Haskell toolmässig auf der JVM angekommen

Was haben die Programmiersprachen Kotlin, Groovy, Scala, Clojure und selbst schlichtes Java gemeinsam? Alle bieten verschiedene funktionale Sprachfeatures für die Java Plattform an. Trotzdem kann in jeder dieser Sprachen ein unbemerkter Seiteneffekt auftreten. Das kann Euch mit Frege nicht passieren, weil jeder Seiteneffekt (z. B. Filezugriff, API-Request, …) im Typsystem sichtbar ist.

Frege bringt dabei nicht nur alle bekannten Features von Haskell (pure Funktionen, starkes Typsystem, Laziness, …) auf die JVM, sondern erlaubt auch die direkte Interaktion mit Java. Einerseits kann Frege direkt Java Code aufrufen und damit von bewährten Bibliotheken profitieren. Anderseits kann auch Java Frege Code ausführen, sodass eine bestehende Java Code Basis leicht erweitert werden kann.

In diesem Vortrag lernt Ihr, wie Ihr dank des neuen Toolings leicht den Sprung von Java nach Frege schafft, damit Fehler schneller erkennt und die Integration meistert.

Ich stelle Euch dazu eine Language Server Implementierung vor, die auch das Gradle Build-Management unterstützt. In einer Demo präsentiere ich, wie Ihr diese in Eurer Entwicklungsumgebung (IDE) nutzen und somit gleich mit Frege loslegen könnt. Mit verschiedenen Code-Beispielen zeige ich, wie Ihr eine modulare und funktionale Architektur aufbauen könnt.

Lokales Testen von AWS Serverless Lambda-Funktionen

Das Testen von Microservices wird mittlerweile hinreichend praktiziert. Bei Serverless-Functions wie AWS Lambdas, wird meist nur manuell nach einem Deployment getestet, speziell wenn es um die Logik geht, welche durch AWS bereitgestellt wird. Dabei ist es auch möglich, die Anwendung automatisiert lokal hochzufahren und zu testen. Aber wie geht das in einem (relativ) geschlossenen System wie der AWS-Cloud? Durch den geschickten Einsatz von LocalStack, TestContainers und dem AWS-SDK ist es möglich, Component-Tests automatisiert auszuführen und etwaige Fehler in der Benutzung der Lambda-Funktion aufzudecken.

Sprecher

Thibault Gagnaux (@trocktrick) arbeitet bei der INTEGON GmbH.

Jens Knipper arbeitet bei OpenValue.

Registrierung

Den Link zum Webinar über Zoom schicken wir an alle angemeldeten Personen per E-Mail kurz vor der Veranstaltung (schaut auch in Eure Spam-Ordner!). Wer sehr kurzfristig dazukommen möchte, muss uns unter orga@jug-da.de oder über eine Direktnachricht auf Twitter (@JUG_DA) kontaktieren.

Anmeldung

Zur besseren Planung bitten wir um eine unverbindliche Anmeldung mit Vor- und Zunamen und E-Mail Adresse. Das ermöglicht uns, bei Änderungen kurzfristig mit Euch in Kontakt zu treten. Wir geben Eure Daten nicht weiter!

Wer sich bis 24 Stunden vor dem Vortrag anmeldet und bei der Veranstaltung anwesend ist, nimmt an unserer Verlosung teil. Gewinnen kann man Bücher, Software-Lizenzen, Zeitschriften-Abos und manchmal auch Freikarten zu lokalen Konferenzen. Der Rechtsweg ist hierbei ausgeschlossen.

Eine Veranstaltung des iJUG e.V., organisiert durch die JUG Darmstadt.