VAVR und Resilience4J mit Robert Winkler

Am 24.8.2017 war Robert Winkler zu Gast bei der JUG-Darmstadt und hat gleich zwei sehr interessante Themen bzw. Bibliotheken vorgestellt.


Im ersten Teil des Vortrags ging es um VAVR (ehemals Javaslang). Eine objekt-funktionale Erweiterung für Java 8, welche darauf abzielt durch funktionale Konzepte, den Quellcode übersichtlicher zu machen und die Anzahl der Codezeilen zu reduzieren.

Nach einer kurzen Einführung zur Funktionalen Programmierung hat Robert an verschiedenen kleinen Beispielen gezeigt, wie durch den Einsatz von vavr, die Anzahl der Codezeilen reduziert werden kann, aber die Verständlichkeit trotzdem nicht leidet.
Außerdem hat er erklärt, was die „Probleme“ sind, wenn man nur die Lambda-Expressions von Java 8 verwendet.

Danach hat Robert verschiedene Konzepte und Features von vavr gezeigt. Unter anderem Tuples, Compositions, Lifting, Currying, Values mit Option, Try, Lazy und Either. Außerdem ist er auf Lists, Streams und Pattern Matching eingegangen.
Ich fand es sehr interessant zu sehen, wie elegant und kurz man Dinge mit Java ausdrücken kann, wenn man vavr verwendet.
Im zweiten Teil des Vortrags hat Robert Resilience4j vorgestellt.

Nachdem er sehr schön motiviert hat, warum es sinnvoll sein kann, ein schlankes Framework, wie Resilience4j zu verwenden, anstatt Hystrix zu benutzen, ist er auf die verschiedenen Resilience-Pattern, die man aus dem Buch Release it! von Michael Nygard kennt, eingegangen. Er hat anschließend einige dieser Pattern an Code-Beispielen erklärt. Ich fand es im Vergleich zu Hystrix sehr übersichtlich und verständlich. Das liegt vermutlich auch daran, dass Resilience4j auch die Bibliothek vavr verwendet und viele funktionale Konzepte einsetzt. Angemerkt hat Robert auch, dass Resilience4j keine weiteren Abhängigkeiten hat und damit sehr schlank ist.
Außerdem findet man auch einige Features bei Resilience4j, wie einen Circular buffer, den Hystrix nicht anbietet.
Zusammenfassend kann man sagen, dass es ein sehr interessanter Vortrag war, der zwei noch recht neue, aber produktiv im Einsatz befindlichen Bibliotheken vorgestellt hat. Bei beiden Bibliotheken juckt es jedem Entwickler in den Fingern und er möchte sie nächsten Tag verwenden. 👍🏻

Vielen Dank an Robert für den interessanten Vortrag!

Kommentare sind abgeschaltet.