Learning Functional JavaScript

Course

Online

£ 100 VAT inc.

Description

  • Type

    Course

  • Methodology

    Online

  • Start date

    Different dates available

A deep dive into functional programming with practical examples from both server and client-side JavaScript code.Along with being tried and trusted, functional programming is one of the biggest current trends in programming. Its focus on side-effect free code, unadorned data manipulation and simple structures promote a coding style that reduces bugs, and lifts the level of abstraction to a point where we can achieve more with less code. All topics discussed in the course can be used to various degrees in any code-base – even if your daily work is with a huge object-oriented project, the techniques discussed will certainly be useful.Learning Functional JavaScript will show you how to build powerful abstractions by combining many small and simple functions, and how to strip your data modeling to the necessities. We start by investigating the power of higher-order functions by diving right into the implementation of the sample application. We then elaborate by partially applying and composing functions before we end up with lazy evaluation to boost our abstraction power and performance.Right from the start we'll dive into the implementation of a text-based adventure game. We will also see how function composition is used to solve specific problems in this domain by combining highly generic functions. We learn function programming techniques that help improve asynchronous code used to load the game from disk.Later we'll become acquainted with a few other examples as well, as we learn about designing applications around an immutable data structure. And we end our journey with a discussion of recursion and how it relates to lazy data structures, and show examples of using previously discussed techniques on infinite data sets.
.
At the end of the course, you'll be proficient with the basic functional programming techniques and will be able to optimize your JavaScript code by applying them

Facilities

Location

Start date

Online

Start date

Different dates availableEnrolment now open

About this course

Explore higher-order functions, what they are and how to work with them
Solve issues related to asynchronous methods effectively by using promises
Use a library such as immutableJS to implement immutability
Implement immutability with Facebook’s React for super fast user interfaces
Combine a “functional core” to build a web application where most of the code is functional
Make efficient use of recursion with big data sets to make code easier to visualize

Questions & Answers

Add your question

Our advisors and other users will be able to reply to you

Who would you like to address this question to?

Fill in your details to get a reply

We will only publish your name and question

Reviews

This centre's achievements

2021

All courses are up to date

The average rating is higher than 3.7

More than 50 reviews in the last 12 months

This centre has featured on Emagister for 4 years

Subjects

  • Programming
  • Database training
  • Database
  • Javascript
  • Javascript training
  • Benefits

Course programme

Introduction to Functional Programming 3 lectures 11:34 The Course Overview Understand the scope of the course and get a feeling of what will be covered and when.
  • Introduce the section titles and a one-sentence pitch
  • Quickly show the demo application
  • Pick a few examples of the section's topics and show where they’re used in the app
What Is Functional Programming? Understand the basic premise of functional programming and how it is helpful.
  • Creating concise, high-level abstractions
  • Avoiding side effects
  • Understanding the benefits of referential transparency
Your First Functional Programming Concepts Ease into functional programming with some important core concepts.
  • Explain pure functions
  • Introducing immutability
  • Introducing lazy execution
Introduction to Functional Programming 3 lectures 11:34 The Course Overview Understand the scope of the course and get a feeling of what will be covered and when.
  • Introduce the section titles and a one-sentence pitch
  • Quickly show the demo application
  • Pick a few examples of the section's topics and show where they’re used in the app
What Is Functional Programming? Understand the basic premise of functional programming and how it is helpful.
  • Creating concise, high-level abstractions
  • Avoiding side effects
  • Understanding the benefits of referential transparency
Your First Functional Programming Concepts Ease into functional programming with some important core concepts.
  • Explain pure functions
  • Introducing immutability
  • Introducing lazy execution
The Course Overview Understand the scope of the course and get a feeling of what will be covered and when.
  • Introduce the section titles and a one-sentence pitch
  • Quickly show the demo application
  • Pick a few examples of the section's topics and show where they’re used in the app
The Course Overview Understand the scope of the course and get a feeling of what will be covered and when.
  • Introduce the section titles and a one-sentence pitch
  • Quickly show the demo application
  • Pick a few examples of the section's topics and show where they’re used in the app
The Course Overview Understand the scope of the course and get a feeling of what will be covered and when.
  • Introduce the section titles and a one-sentence pitch
  • Quickly show the demo application
  • Pick a few examples of the section's topics and show where they’re used in the app
The Course Overview Understand the scope of the course and get a feeling of what will be covered and when.
  • Introduce the section titles and a one-sentence pitch
  • Quickly show the demo application
  • Pick a few examples of the section's topics and show where they’re used in the app
Understand the scope of the course and get a feeling of what will be covered and when.
  • Introduce the section titles and a one-sentence pitch
  • Quickly show the demo application
  • Pick a few examples of the section's topics and show where they’re used in the app
Understand the scope of the course and get a feeling of what will be covered and when.
  • Introduce the section titles and a one-sentence pitch
  • Quickly show the demo application
  • Pick a few examples of the section's topics and show where they’re used in the app
What Is Functional Programming? Understand the basic premise of functional programming and how it is helpful.
  • Creating concise, high-level abstractions
  • Avoiding side effects
  • Understanding the benefits of referential transparency
What Is Functional Programming? Understand the basic premise of functional programming and how it is helpful.
  • Creating concise, high-level abstractions
  • Avoiding side effects
  • Understanding the benefits of referential transparency
What Is Functional Programming? Understand the basic premise of functional programming and how it is helpful.
  • Creating concise, high-level abstractions
  • Avoiding side effects
  • Understanding the benefits of referential transparency
What Is Functional Programming? Understand the basic premise of functional programming and how it is helpful.
  • Creating concise, high-level abstractions
  • Avoiding side effects
  • Understanding the benefits of referential transparency
Understand the basic premise of functional programming and how it is helpful.
  • Creating concise, high-level abstractions
  • Avoiding side effects
  • Understanding the benefits of referential transparency
Understand the basic premise of functional programming and how it is helpful.
  • Creating concise, high-level abstractions
  • Avoiding side effects
  • Understanding the benefits of referential transparency
Your First Functional Programming Concepts Ease into functional programming with some important core concepts.
  • Explain pure functions
  • Introducing immutability
  • Introducing lazy execution
Your First Functional Programming Concepts Ease into functional programming with some important core concepts.
  • Explain pure functions
  • Introducing immutability
  • Introducing lazy execution
Your First Functional Programming Concepts Ease into functional programming with some important core concepts.
  • Explain pure functions
  • Introducing immutability
  • Introducing lazy execution
Your First Functional Programming Concepts Ease into functional programming with some important core concepts.
  • Explain pure functions
  • Introducing immutability
  • Introducing lazy execution
Ease into functional programming with some important core concepts.
  • Explain pure functions
  • Introducing immutability
  • Introducing lazy execution
Ease into functional programming with some important core concepts.
  • Explain pure functions
  • Introducing immutability
  • Introducing lazy execution
Higher Order Functions 3 lectures 15:51 First-class Functions Define the concept of "first-class" functions.
  • Distinguishing between function declarations and function expressions
  • Using functions as methods
  • Assigning properties to function objects
Passing Functions as Arguments Preparing the AST for building the view.
  • Building an AST walker-filter
  • Building an AST walker-map
  • Building and using splitBy-reduce and more examples of map/filter
Returning Functions Applying a changeset to a user.
  • Filtering out flags to be removed
  • Extracting the filter function
  • Solving the problem with a combination of function-building functions
Higher Order Functions 3 lectures 15:51 First-class Functions Define the concept of "first-class" functions.
  • Distinguishing between function declarations and function expressions
  • Using functions as methods
  • Assigning properties to function objects
Passing Functions as Arguments Preparing the AST for building the view.
  • Building an AST walker-filter
  • Building an AST walker-map
  • Building and using splitBy-reduce and more examples of map/filter
Returning Functions Applying a changeset to a user.
  • Filtering out flags to be removed
  • Extracting the filter function
  • Solving the problem with a combination of function-building functions
First-class Functions Define the concept of "first-class" functions.
  • Distinguishing between function declarations and function expressions
  • Using functions as methods
  • Assigning properties to function objects
First-class Functions Define the concept of "first-class" functions.
  • Distinguishing between function declarations and function expressions
  • Using functions as methods
  • Assigning properties to function objects
First-class Functions Define the concept of "first-class" functions.
  • Distinguishing between function declarations and function expressions
  • Using functions as methods
  • Assigning properties to function objects
First-class Functions Define the concept of "first-class" functions.
  • Distinguishing between function declarations and function expressions
  • Using functions as methods
  • Assigning properties to function objects
Define the concept of "first-class" functions.
  • Distinguishing between function declarations and function expressions
  • Using functions as methods
  • Assigning properties to function objects
Define the concept of "first-class" functions.
  • Distinguishing between function declarations and function expressions
  • Using functions as methods
  • Assigning properties to function objects
Passing Functions as Arguments Preparing the AST for building the view.
  • Building an AST walker-filter
  • Building an AST walker-map
  • Building and using splitBy-reduce and more examples of map/filter
Passing Functions as Arguments Preparing the AST for building the view.
  • Building an AST walker-filter
  • Building an AST walker-map
  • Building and using splitBy-reduce and more examples of map/filter
Passing Functions as Arguments Preparing the AST for building the view.
  • Building an AST walker-filter
  • Building an AST walker-map
  • Building and using splitBy-reduce and more examples of map/filter
Passing Functions as Arguments Preparing the AST for building the view.
  • Building an AST walker-filter
  • Building an AST walker-map
  • Building and using splitBy-reduce and more examples of map/filter
Preparing the AST for building the view.
  • Building an AST walker-filter
  • Building an AST walker-map
  • Building and using splitBy-reduce and more examples of map/filter
Preparing the AST for building the view.
  • Building an AST walker-filter
  • Building an AST walker-map
  • Building and using splitBy-reduce and more examples of map/filter
Returning Functions Applying a changeset to a user.
  • Filtering out flags to be removed
  • Extracting the filter function
  • Solving the problem with a combination of function-building functions
Returning Functions Applying a changeset to a user.
  • Filtering out flags to be removed
  • Extracting the filter function
  • Solving the problem with a combination of function-building functions
Returning Functions Applying a changeset to a user.
  • Filtering out flags to be removed
  • Extracting the filter function
  • Solving the problem with a combination of function-building functions
Returning Functions Applying a changeset to a user.
  • Filtering out flags to be removed
  • Extracting the filter function
  • Solving the problem with a combination of function-building functions
Applying a changeset to a user.
  • Filtering out flags to be removed
  • Extracting the filter function
  • Solving the problem with a combination of function-building functions
Applying a changeset to a user.
  • Filtering out flags to be removed
  • Extracting the filter function
  • Solving the problem with a combination of function-building functions
Functional Asynchrony 3 lectures 22:21 Callbacks Creating new users.
  • Generating the salt
  • Creating the password hash
  • Persisting the user in the database
Continuation Passing Style Applying iterator methods on async operations.
  • Reimagining save() as a sequence of operations
  • Implementing series()
  • Developing a CPS-aware map and using async.js
Promises Parsing room files with promises.
  • Read and parse a single room file
  • Parse and read multiple room files in parallel
  • Introduce promisify to get the full benefit of promises
Functional Asynchrony. 3 lectures 22:21 Callbacks Creating new users.
  • Generating the salt
  • Creating the password hash
  • Persisting the user in the database
Continuation Passing Style Applying iterator methods on async operations.
  • Reimagining save() as a sequence of operations
  • Implementing series()
  • Developing a CPS-aware map and using async.js
Promises Parsing room files with promises.
  • Read and parse a single room file
  • Parse and read multiple room files in parallel
  • Introduce promisify to get the full benefit of promises
Callbacks Creating new users.
  • Generating the salt
  • Creating the password hash
  • Persisting the user in the database
Callbacks Creating new users.
  • Generating the salt
  • Creating the password hash
  • Persisting the user in the database
Callbacks Creating new users.
  • Generating the salt
  • Creating the password hash
  • Persisting the user in the database
Callbacks Creating new users...

Additional information

Knowledge about basic JavaScript concepts such as JavaScript objects and functions is a prerequisite

Learning Functional JavaScript

£ 100 VAT inc.