Konrad Kamiński
Software Engineer at Allegro.pl
Actions
Konrad is a software engineer working at Allegro, a major Polish e-commerce company. He has 20 years of experience in the IT industry in various roles (mostly as a developer and a technical leader) in software companies. He spent the last 17 years of his career with Java-related technologies. For the past two years he's used Kotlin as his primary programming language (with delight). He blogs a bit, gives talks and trainings and contributes to open source.
Asynchronous programming with Kotlin coroutines in Spring
Coroutines is a new feature in Kotlin 1.1. It allows for writing an asynchronous code almost like it was regular/synchronous. If you combine it with Spring you'll get a powerful tool for creating fast, scalable, non-blocking applications.
In this session, I'll show how coroutines can be used in Spring-based applications, what sort of problems can be encountered and how to solve them. I'll also present a glimpse of the spring-kotlin-coroutine library, which is a one-stop solution for Spring/coroutines interoperability.
Coroutines and Reactive Programming - friends or foes?
Coroutines may be seen as a replacement of reactive programming. Both of them offer the possibility to create asynchronous applications although in a very different way.
Does it still make sense to use reactive programming in Kotlin? Or can we just stick with coroutines and forget all about other asynchronous applications approaches?
Or maybe we can mix both of them, take their best parts and come up with a solution which is superior to any of the two?
In this session we'll learn the differences between coroutines and reactive programming. We'll see when one shines and the other... is not so great. We'll look under the hood
to find out the reasons behind some design decisions and how those decisions affect performance and interoperability. We'll try to decide when we should use coroutines
and when the reactive programming model is better.
KotlinConf 2017 Sessionize Event
Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.
Jump to top