Variance modifiers are one of those parts of Kotlin that all use (often unconsciously), but only a small portion of developers actually understand it well. It gives us the convenience of using collection or functional types, and lets us implement popular patterns, like Covariant Nothing Object (used by emptyList or many data structures) or Covariant Nothing Class (used by Either and on many implementations of Result). In this presentation, Marcin will deeply explore those concepts and patterns, concentrating on practical use cases.
Marcin Moskała is an experienced Android developer, teacher, and an official Jetbrains‘ Kotlin training partner. He is the founder of Kt. Academy, author of the books »Android Development with Kotlin«, »Effective Kotlin« and »Kotlin Coroutines: Deep Dive«. He is also an active programming community member, the main author of the biggest medium publication about Kotlin, and a speaker invited to many programming conferences.