Mastering Functional JavaScript Libraries

Mastering Functional JavaScript Libraries

English | MP4 | AVC 1920×1080 | AAC 48KHz 2ch | 2h 47m | 641 MB

Master the art of Web application development using popular functional Javascript Libraries

The goal of this course is to give you hands-on experience with JavaScript functional programming libraries. You will discover throughout the course how easy it is to apply functional programming concepts in practice.

In the first section, you will learn how different functional programming libraries implement automatic currying, partial application, lazy evaluation, higher-order functions, promises, cloning, chaining, function composition, and immutable data structures. You will execute code in Underscore.js, LoDash, Lazy.js, Ramda.js, Immutable.js, Scala, Elm, PureScript, and ClojureScript.

In order to learn how to use functional programming libraries in depth, in the second and third sections you will learn how to implement two web-applications using LoDash and RxJS.

The LoDash application shows you how to process matrixes with LoDash, by implementing a Sudoku game in JavaScript. We will model the Sudoku table with LoDash, collect all the constraints of the table, and validate it. The Sudoku table will be rendered using Underscore templating, and DOM events will help you manipulate state space with user interactions.

The third section introduces functional reactive programming using RxJS. Functional reactive programming deserves its own section, as it is a comprehensive topic providing you with a different developer experience from most of the other functional programming libraries. After learning the fundamentals of functional reactive programming and RxJS, you will learn how to put the theory into practice by implementing a web application. This web application uses the Slack API to monitor the activity of different Slack channels. Beyond submitting Ajax requests, you will also learn how to use web sockets to display live updates on your site using event streams.

What You Will Learn

  • Learn how to use Underscore, LoDash, and Lazy.js as well as the ins and outs of using immutable data structures with Immutable.js
  • Learn the basics of using functional programming languages that compile to java script: Scala, Elm, PureScript, and ClojureScript
  • Link functional programming principles with their implementations in different libraries
  • Implement a web application with LoDash and RxJS
  • Understand functional reactive programming in depth and how to connect your application with the Slack API
  • Master several refactoring steps to get an idea of how to make your code more maintainable
Table of Contents

01 The Course Overview
02 Underscore.js
03 LoDash
04 Lazy.js
05 Ramda.js
06 Immutable.js
07 Functional Languages That Compile to JavaScript
08 Modelling the Sudoku Table
09 Modelling Field Constraints
10 Rendering the Sudoku Table
11 Event Handling
12 Table Validation and Conclusion
13 Introduction to Reactive Programming
14 Introduction to RxJS
15 RxJS in Practice –Creating a Web Application Using the Slack API
16 Fetching Data with RxJS Using the Slack API
17 Rendering the Application
18 RxJS in Practice – Slack App Exercises
19 Course Summary