Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Treehouse

Introduction to Functional Programming Course

via Treehouse

Overview

Functional Programming is an old paradigm, but one that is relatively new to the Java world. In this course we will explore how to take advantage of the power that comes with thinking declaratively.

What you'll learn
  • Imperative vs. Declarative Syntax
  • Lambdas & Method References
  • Streams
  • Functional Programming concepts
  • Higher Order Functions and Closures

Syllabus

  Java's Functional Toolset

 

Java 8 introduced new Functional Programming capabilities. Let's explore them!

13 steps
  • Introduction

    5:08

  • Why Now?

    4:56

  • Imperative vs. Declarative

    7:47

  • Imperative vs. Declarative

    3 questions

  • A More Functional Loop

    5:46

  • Lambdas

    5:36

  • Using forEach

    5 minutes

  • Method References

    5:21

  • Using method references

    5 minutes

  • Function Shapes

    9:31

  • Supplier and Consumer

    2 questions

  • Function Shapes - Function and Predicate

    4:36

  • Function Shape Review

    4 questions

  Meet Streams

 

Let's explore the Streams API which provides powerful declarative ways to process sequences of elements.

10 steps
  • Understanding Streams

    4:56

  • Setting Up the Project

    2:33

  • Filtering

    9:36

  • Filtering High Scores

    10 minutes

  • Collecting and Limiting

    11:16

  • Collecting 3 NES Scores

    10 minutes

  • Transforming With Map

    9:29

  • Mapping Player's Names

    10 minutes

  • flatMap

    12:18

  • Creating a Word Cloud

    10 minutes

  Reduction and Aggregation

 

Reduce, aggregate and use ranges!

7 steps
  • Reduction Operations

    7:25

  • Reduce Housing Records

    15 minutes

  • Optionals

    9:56

  • Optional Quiz...Homonym Fail, it is Required

    3 questions

  • Ranges

    6:11

  • Using a Range to Produce a Menu

    15 minutes

  • Infinite Streams

    4:29

  Functional Programming Fundamentals

 

Now that you've had some hands on experience, let's review some of important functional programming concepts with broader strokes.

10 steps
  • Pure Functions

    4:06

  • Side Effects

    4:45

  • Keeping Things Pure

    3 questions

  • Higher Order Functions

    8:22

  • Higher Order Function

    2 questions

  • Function Composition

    8:36

  • Compose Price Conversion Functions

    20 minutes

  • Closures

    9:15

  • Functionally Over

    1:48

  • Higher Order Function for Price Conversion

    20 minutes

Reviews

Start your review of Introduction to Functional Programming Course

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.