Design patterns in the 21st century

With the advent of lambdas in Java 8, functional programming has truly returned to the mainstream, sitting proudly alongside its object-oriented sibling. We now have the tools to build apps that use the best of both paradigms, but our knowledge and understanding of the concepts under the hood need to catch up.

For years we’ve relied on design patterns to guide us to clean, simple, and practical solutions, but many of the classic OO design patterns featured in the Gang of Four book are actually workarounds for the lack of functional programming constructs such as in the form of lambdas and higher-order functions.

With new tools at our disposal, we can simplify the majority of design patterns, using pure functions to reduce the proliferation of classes that are used once and discarded. By removing the boilerplate surrounding our code, we focus on the most important part: the behavior.

In this session recorded at JAX London 2014, software artisan Samir Talwar walks us through classic design patterns, as well as some more contemporary object-oriented principles, showing you how functions can dramatically simplify your design, leading to code cleaner and more concise.

Abdul J. Gaspar