Table of Contents
- Getting started with Functional Programming
- Putting the Function in Functional Programming
- Function Composition
- Streams and the Evaluation of Expressions
- Recursion Techniques in Java 8ures
- Optional and Monads
- Supporting Design Patterns using Functional Programming
- Refactoring, Debugging, and Testing
- Bringing it all Together

