Functional Programming in 7 Days

Functional Programming in 7 Days

English | MP4 | AVC 1280×720 | AAC 44KHz 2ch | 4h 48m | 809 MB

Take a 7-day journey to the functional paradigm of Python programming

With every business being penetrated by data, it’s even more important to move towards functional paradigms to tackle the side-effects of programming, making testing and debugging easier. This course will teach you how to deconstruct data structures and store variable bindings (with closures). You’ll also learn about strong typing, storage allocation, and whether to use boxed (pointer-to-value) or unboxed (value directly) representation using functional programming.

This fast-paced actionable guide offers seven 30-minute lessons, each followed by a practical exercise to get you up and running. By the end, you’ll be well-equipped with programming concepts that enable robust functional programming, taking you one step closer to proficient programming in Python.

This hands-on course is a step-by-step guide that covers the important aspects of functional programming and the different tools that the Python language provides using step-by-step instructions, practical illustrations, best practices, and examples of applications.

What You Will Learn

  • Use built-in libraries to implement higher order functions
  • Build robust web applications using functional programming
  • Implement decorators and other optimizations to avoid wasting memory in application development
  • Identify common functional design patterns and know how these apply to Python
  • Perform computation using monads and functors
Table of Contents

Getting Started with Functional Programming
1 The Course Overview
2 Introduction to Functional Programming
3 Recursion in Python
4 Immutability and Mutability
5 Functions as First-Class Objects
6 Lambda Expressions in Python

Advanced Python Functions
7 Classes, Objects, and Functions
8 List and Tuple
9 Set and Dictionary
10 Implementing Iterator Protocol
11 Generators and Yield Keyword
12 List and Dictionary Comprehension

Applying Callable and Lazy Evaluation
13 Nested Functions and Closures
14 Advanced Lambda Functions
15 Lazy Evaluation in Python

Implementing Higher Order Functions
16 Higher Order Functions
17 Map, Filter, and Iter
18 The Itertools Module
19 The Functools Module
20 Using Decorators in Python

Implementing Utilities and Optimizing Storage
21 Composite Design in Python 3
22 Caching in Python
23 Memoization in Python
24 The Operator Module

Functional Programming for Applications
25 Implementing a Word Counter
26 Implementing a CSV Reader
27 Implementing Word Counter Using Multiprocessing
28 Using Yield to Pass Input to Functions
29 Implementing Coroutines in Python
30 Building Data Pipelines Using Coroutines

Demystify Currying, Dispatching, and PyMonad
31 Functional Composition and Currying in Python
32 Using Functors in Python
33 Single and Multiple Method Dispatching in Python
34 Introduction to Monads
35 Using the PyMonad Library
36 Updating Docstrings Using Functools