Embrace Java8: Functional Programming with Eclipse
Without a doubt, Java8 is the biggest improvement to the language since the introduction of generics. Finally it is possible to write code that reads like the problem statement. No longer do you need to manually translate functions into a procedural list of statements. With the newly introduced lambda expressions, the enhancements to the collections framework, and the new stream API, you can express a solution that you can look at and immediately know it’s correct.
While Java has traditionally been strong when it comes to abstracting over data types, lambda expressions allow us to abstract over behavior. They “are going to change the way we all program in Java every day” (Brian Goetz). Be part of that change and learn how to embrace functional programming with Eclipse.
In this tutorial, we want to explain the differences between imperative and functional programming to developers who are already familiar with Java. You will learn how to think functional when you approach a problem and you’ll get used to the new APIs in Java 8. Also we will see how immutable data structures and a functional programming style nicely complement each other. This allows us to easily parallelize our algorithms and leverage the power of multi-core processors. If time permits, we will also look into ways to benefit from functional programming paradigms in the pre-lambda world.