Java Dev Session: Never change state and still get things done

State can be difficult. Concurrent updates can lead to inconsistency, it can be difficult to scale and have you ever tried testing a component with a random element without having to resort to mocking? Functional purity can help us here.

In this talk, we are going to investigate how we can design a pure functional structure that abstracts over state manipulations. We will start with a solution that uses mutable state to solve a problem. Then we will refactor step by step and eventually transform it to pure functional code that never changes state. Familiarity with lambdas is assumed, but no knowledge of functional programming is required.

Code examples are in Scala, but no advanced language concepts are used, so knowledge of Java 8 is sufficient. As an audience, I would get a comparative overview of solving a problem in a traditional way with imperative code and with pure functional structures. I would also learn the benefits of purely functional state and its drawbacks.

Please click here to complete your application.

Leave a Reply