Georg Dresler
Tackling Complexity With Functional Programming And Kotlin
#1about 3 minutes
Understanding a complex and unusual feature request
A real-world example of a complex feature request involves an offline form editor that syncs data via JSON embedded in PDF metadata.
#2about 3 minutes
Why traditional try-catch blocks fail for complex errors
Traditional try-catch blocks for error handling either obscure an error's origin or make the code unreadable with excessive boilerplate.
#3about 7 minutes
Using the Either type for robust functional error handling
Replace exceptions with the `Either` sealed class, using `flatMap` to chain successful operations and `fold` to handle the final success or error state.
#4about 4 minutes
Enforcing data validation using private constructors in Kotlin
Use a private constructor combined with a companion object's `invoke` operator to run validation logic upon object creation, preventing invalid states.
#5about 7 minutes
Modeling distinct data states with algebraic data types
Use sealed classes (sum types) to model different states like `Draft` and `Validated`, letting the compiler enforce state-specific logic instead of relying on boolean flags.
#6about 4 minutes
Recap of functional techniques and audience Q&A
A summary of using `Either` for errors, private constructors for validation, and ADTs for state, followed by a Q&A on libraries like Arrow and custom exceptions.
Related jobs
Jobs that call for the skills explored in this talk.
Matching moments
03:57 MIN
Modern object orientation with Kotlin data classes
Moving from Java to Kotlin
02:29 MIN
Using Kotlin Coroutines to simplify complex reactive code
Back(end) to the Future: Embracing the continuous Evolution of Infrastructure and Code
02:00 MIN
Real-world applications of functional programming
A Guide To Functional Programming
01:26 MIN
Leveraging functional programming with first-class functions
Moving from Java to Kotlin
10:56 MIN
Audience Q&A on Kotlin features and learning resources
Route from Java to Kotlin
01:40 MIN
Creating reusable UI components with Kotlin extension functions
How to kill JavaScript from your Stack with HTMX and Kotlin
06:04 MIN
Audience Q&A on functional programming concepts
A Guide To Functional Programming
02:58 MIN
Introduction to Kotlin and its Java interoperability
Route from Java to Kotlin
Featured Partners
Related Videos
Moving from Java to Kotlin
Urs Peter
Route from Java to Kotlin
Christian Woerz
A Guide To Functional Programming
Jemima Abu
Algebraic Data Types + Pattern Matching = Elegant and readable Java code
Balkrishna Rawool
Java Sealed Classes vs. Kotlin Sealed Classes #Slideless
Lothar Schulz
Functional Programming in C++
Jonathan MĂĽller
F#, path to functional enlightenment
Onur Gumus
Why Kotlin is the better Java and how you can start using it
Iris Hunkeler
Related Articles
View all articles



From learning to earning
Jobs that call for the skills explored in this talk.


Saby New Compy
Bielefeld, Germany
Intermediate
Java
Docker
Kotlin
Groovy
Node.js
+2

Uniwunder GmbH
Dresden, Germany
Intermediate
Senior
Java
Kotlin

Saby New Compy
Karlsruhe, Germany
Intermediate
Kotlin
Android

Aufmaster GmbH
Frankfurt am Main, Germany
Intermediate
Senior
GIT
Kotlin

PROSOZ Herten GmbH
Herten, Germany
Junior
Intermediate
Senior
Java
Scrum
Kotlin
Microservices

IT-Objects GmbH
Essen, Germany
Intermediate
Senior
Java
Kotlin


Saby New Compy
Bielefeld, Germany
Intermediate
Java
Kotlin