– Functional Java 8+


Functional Programming is much more than writing Lambda Expressions – it’s a completely new way of thinking.
In this workshop, we’ll learn how to supercharge our everyday Java programming experience by utilizing Functional Programming idioms. We’ll discover Lambda Expressions and various practices that will help making our code more readable, predictable and less error-prone.

We’ll start by discovering Java’s native Functional Programming support and then gradually work our way up towards essential Functional Programming concepts and advanced solutions found in the Vavr library – making a gentle paradigm shift.


  • From OOP to FP – a short story
  • Anatomy of Lambda Expressions
  • Overview of java.util.function
  • Design Patterns in the light of Lambda Expressions
  • Introduction to FP Design Patterns and Type-Driven Development
  • Introduction to java.util.Optional
  • Lazy Sequences and Stream API
  • Functional Java Caveats
  • Diving deep into FP with Vavr
  • Persistent Collections API
  • Functional Exception Handling with Optional/Try/Either
  • Summary

What you’ll need:

  • A Linux, OSX Or Windows laptop

Prior Knowledge

  • Good Java knowledge


Grzegorz is a senior developer, trainer, and international conference speaker who cares about quality, craftsmanship, clean code and getting things done.

During the day, develops an online gaming platform Casumo and leads a team of technical editors at Baeldung.

Blogs on DZone(MVB) and

back to top