Applying Functional Programming Techniques in Java

Beyond lambda expressions and streams, this course will teach you the concepts and techniques that lie at the foundation of functional programming and how to apply them in Java.
Course info
Rating
(23)
Level
Intermediate
Updated
Sep 5, 2019
Duration
2h 40m
Table of contents
Course Overview
Thinking Functionally with Java
Building Complex Functionality by Composing Functions
Creating Reusable Functions with Partial Application and Currying
Abstracting Control Structures to Control the Application Flow
Avoiding Nulls with the Optional Type
Handling Errors in a Functional Way
Building Containers for Side Effects
Description
Course info
Rating
(23)
Level
Intermediate
Updated
Sep 5, 2019
Duration
2h 40m
Description

At the core of writing more robust and maintainable code is a thorough knowledge of functional programming. In Applying Functional Programming Techniques in Java, you'll learn how to program in a functional style with Java beyond the use of lambdas and streams. First, you’ll learn why functional programming matters and how it can be used with Java. Next, you’ll explore function composition and partial application to create reusable functions. Finally, you'll discover how to abstract control structures and use types as computational contexts to program in a functional style. When you're finished with this course, you’ll have a foundational knowledge of functional programming that will help you as you move forward to write more robust and easier to maintain Java code.

About the author
About the author

Esteban Herrera has more than twelve years of experience in the software development industry. Having worked in many roles and projects, he has found his passion in programming with Java and JavaScript. Nowadays, he spends all his time learning new things, writing articles, teaching programming, and enjoying his kids.

More from the author
Working with Nulls in Java
Intermediate
1h 12m
Dec 30, 2019
JMeter: Getting Started
Beginner
2h 5m
Apr 29, 2019
More courses by Esteban Herrera
Section Introduction Transcripts
Section Introduction Transcripts

Course Overview
Hi everyone, my name is Esteban Herrera. Welcome to my course, Applying Functional Programming Techniques in Java. I have been working with Java for more than 10 years. I love the language and teaching all I know about it. Java 8 introduced features like Lambda Expressions, method references, and the stream API with the intention of making Java easier to use for functional programming. But these features don't really enforce functional programming principals like referential transparency. They only allow you to program in a functional style and sometimes in a limited way. Beyond Lambda Expressions and streams, in this course, you are going to learn the most important principals and techniques behind functional programming. Some of the major topics that we will cover include the concept of pure functions, currying and partial application, how to abstract control structures, and monads. By the end of this course, you'll know how to use functional programming techniques to build more robust and maintainable applications. Before beginning the course, you should be familiar with the Stream API, Lambda Expressions, method references, and generics. I hope you'll join me on this journey to learn functional programming in Java with the course, Applying Functional Programming Techniques in Java, at Pluralsight.