Learning Functional Programming with JavaScript ES6+

Learning Functional Programming with JavaScript ES6+

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

Want to write more robust, maintainable code? In this course, discover how this can be accomplished with functional programming, and learn about the functional concepts at the heart of many JavaScript frameworks and programs. Shaun Wassell begins by explaining what functional programming is and how it compares to object-oriented programming. Shaun then covers the basics of working with first-class functions in JavaScript ES6+, discussing concepts such as higher-order functions and closure. He also shows how functional programming makes working with data structures more straightforward; dives into advanced concepts, including partial application and recursion; and provides challenges that can help you test your understanding of key functional programming concepts.

Topics include:

  • The goal of functional programming
  • Declarative vs. imperative programming
  • Ensuring immutability
  • Arrow functions in ES6
  • Passing functions as arguments
  • Mapping, filtering, slicing, sorting, and reducing
  • Advanced functional concepts, including recursion
Table of Contents

1 A functional approach to transform code
2 What you should know
3 Installing Node.js and npm
4 Setting up the project
5 Setting up the project Hello World
6 The goal of functional programming
7 Declarative vs. imperative programming
8 Immutability
9 Separation of data and functions
10 Object oriented to functional approach
11 First-class functions
12 Ensuring immutability ESLint
13 Ensuring immutability Install ESLint
14 Ensuring immutability Finalize ESLint
15 Arrow functions in ES6
16 Functions as data
17 Functions as data, continued
18 Passing functions as arguments
19 Returning functions
20 Closure
21 Implement private variable
22 Higher-order functions
23 JavaScript Functional parts
24 The spread operator
25 Mapping
26 Filtering
27 Every some
28 Slicing
29 Sorting
30 Reducing
31 Combining functions
32 Challenge Recreate the map function
33 Solution Recreate the map function
34 Advanced functional concepts
35 Currying and partial application
36 Recursion
37 Functions as objects
38 Challenge Convert array
39 Solution Convert array
40 Challenge Anagrams
41 Solution Anagrams
42 Challenge Error messages
43 Solution Error messages
44 Next steps