Functional programming is a way to program where values are passed around into functions, and those functions are also values. The principles of functional programming can help developers write elegant, maintainable, scalable, and predictable code.

We have released a full course on functional programming in Java on the freeCodeCamp.org YouTube channel. This course was developed by Nelson Djalo from Amigoscode. While this course is for beginners, you should already have some knowledge of Java.

In this course, you will learn when, why, and how to use functional programming. You will learn the power of Java Functional Interfaces and how they can be used to create powerful statements and design patterns. You will also learn how to write declarative code by combining functional interfaces with streams.

Here are the topics and skills covered in this course:

  • Imperative vs Declarative
  • Functional Interfaces
  • Functions, Predicate, Consumers and Suppliers
  • Streams and Optionals
  • Combinator Pattern
  • Lambdas
  • Callbacks
  • Properties of Functional Programming

Watch the video below or on the freeCodeCamp.org YouTube channel (2 hour watch).