Softwarekonferenz für parallele
und hochperformante Programmierung
Heidelberg, Print Media Academy, 19.–22. Februar 2019

// Nebenläufigkeit mit Kotlins' Koroutinen

Die Entwicklung von nebenläufigen, parallelen und/oder verteilten Programmen gilt in der Regel schon als kompliziert. Aus Performance- und Skalierungsgründen kommen hier oft noch die Asynchronität und nicht-blockierender IO hinzu.

In diesem Vortrag wird anhand eines Webservers gezeigt, wie man mit Hilfe der Koroutinen der Programmiersprache Kotlin Anwendungen schreiben kann, die einerseits modernsten Ansprüchen an Asynchronität und Skalierbarkeit genügen und dabei andererseits übersichtlich und wartbar bleiben.

Nebenbei werden die benötigten Grundlagen von Kotlin erläutert, so dass keine Vorkenntnisse der Programmiersprache erforderlich sind.

Vorkenntnisse
* Grundkenntnisse über die parallele Programmierung mit Threads.
* Erfahrungen mit der parallelen Programmierung mit Threads in einer Programmiersprache wie Java oder C++ sind von Vorteil, aber nicht zwingend notwendig.

Lernziele
Die Zuhörer lernen die Vorteile der Koroutinen von Kotlin kennen und wie mit Hilfe von nicht-blockierender IO und asynchroner Nebenläufigkeit skalierbarer, wartbarer und korrekter Code erstellt werden kann.
Nachdem die Zuhörer Einblick in die häufigsten Probleme bei der Nebenläufigkeit und Parallelisierung mit den bisherigen Frameworks in der Java-Umgebung erhalten haben, bekommen sie einen Überblick zu Kotlin und wie Koroutinen die Situation entscheidend vereinfachen können.


// Jörn Dinkla Jörn Dinkla

arbeitet als Softwareentwickler und Berater bei ThoughtWorks Deutschland. Seine Schwerpunkte sind parallele und verteilte Systeme, Webanwendungen und GPU-Computing. Für den Manning-Verlag war er technischer Editor des Buchs "OpenCL in Action". Er hat mehrere Vorträge zum Thema GPU-Computing auf vorherigen parallel-Konferenzen gehalten und Artikel über dieses Thema für iX / heise Developer geschrieben.