Find the perfect coding resourcesLearn more

Learn Functional Programming in Python

Boot.devBoot.dev
Recommended
Meet Your Instructor
Lane Wagner avatar

Lane Wagner

Instructor

Lane is a back-end engineer and the lead instructor of Boot.dev. He has taught over one million students worldwide, on Boot.dev, FreeCodeCamp, YouTube and the Backend Banter podcast. Lane worked as a backend engineer writing Go, Python and TypeScript, then moved into engineering management and a couple of years later left to build Boot.dev full-time.

22 hours

Completion

Certificate included

Format

Interactive coding

Freemium

What You'll Learn

Master pure functions and immutability principles

Implement higher-order functions and closures

Apply recursion for elegant problem solving

Transform functions with currying and decorators

Understand sum types and functional data structures

Overview

Functional programming is back in vogue. There's a reason front-end frameworks like React and Vue are moving toward functional programming, and after this course you'll more than understand its benefits. We'll dive in-depth into all of the foundational concepts of functional programming in a familiar language.

Table of Contents
1
What is Functional Programming?

Learn about the difference between OOP and functional styles, and what the real difference is: imperative vs declarative

2
First Class Functions

First class and higher order functions are foundational to everything we do in the functional paradigm

3
Pure Functions

My favorite part of functional programming is the focus on pure functions that are easy to test and reason about

4
Recursion

While not unique to functional programming, recursion is a powerful tool that is used often when trying to avoid imperative code

5
Function Transformations

Learn how to transform functions into other functions to write more abstract and generalized code

6
Closures

Learn about encapsulating state within functions and how to use closures to write more expressive code

7
Currying

Learn to transform a function with multiple parameters into a series of functions with one parameter

8
Decorators

Learn about Python's decorators and how they're essentially syntactic sugar for higher order functions

9
Sum Types

Learn about sum types, a powerful way to represent data that is used in many functional languages

Share Your Experience

Sign in to leave a review and help others

No reviews yet. Be the first to review!