Advanced React.js and Node.js

Course Overview:

This workshop teaches the participants how to design and develop server-side applications using the event-driven, non-blocking model framework Node.js. This program inducts the participant in some of the advanced concepts of the JavaScript language so that the participant is well equipped to build end-to-end application using JavaScript.

Course Objectives:

  • Understand the non-blocking nature of Node.js
  • Writing asynchronous code with call-backs and streams
  • Learn how to modularize code using NPM and require ()
  • Understand and take advantage of the built-in apis for building scalable few applications
  • Learn how to build web api using Express.js
  • Learn how to build real-time applications using WebSockets and socket.io

Pre-requisites:

  • Experience in application development in any programming language
  • Basic knowledge of the JavaScript language
  • Exposure to any server technology (J2EE, .NET, Ruby etc)

Target Audience:

  • Web developer who wants to build data intensive scalable applications using Node.js

Course Duration:

  • 35 hours – 5 days

Course Content:

ADVANCED JAVASCRIPT

Expressive JavaScript

  • The Flexibility of JavaScript
  • JavaScript as a Loosely Typed Language
  • Functions as First-Class Objects
  • Object Mutability

Functions In Depth

  • Function Objects
  • Function Literal
  • Function Invocation Patterns
  • Augmenting Types
  • Recursion & Closures
  • Functions as Callbacks
  • Function Currying & Memorization

Closures In Depth

  • How Closures Work
  • Private Variables, Callbacks and Timers
  • Binding Function Contexts
  • Overriding Function Behavior

Object Orientation With Prototypes

  • Object Instantiation
  • Constructors
  • Inheritance and Prototype Chain
  • Extending Object
  • Extending Number
  • Instantiation Issues
  • Writing class-like code

JavaScript Gotchas

  • Global Variables
  • Scope
  • Semicolon Insertions
  • Type Coercion
  • Summary and Conclusion

Introduction to Node.js

  • Installing Node.js
  • Node’s Event Loop
  • Alternatives to Node.js
  • Writing asynchronous code

Modularizing code

  • Understanding built-in modules
  • Techniques for modularizing JavaScirpt code
  • Using require() to modularize application code
  • Using npm for third-party modules
  • Handling Exceptions

Events and Streams

  • Understanding Events
  • EventEmitter class
  • Understanding Streams
  • Reading and writing streams
  • Using pipe()

 

Accessing Local Resources

  • Process Object
  • Manipulating File System
  • Understanding Buffers

Node.js and the web

  • Handling web requests
  • Building a web server
  • Understanding the need for web sockets
  • Realtime interaction using socket.io

Building APIs using Express.js

  • Installing Express.js
  • Routing
  • Parameters and queries in routing
  • Creating REST services
  • Authentication and authorization
  • Error Handling

NodeJs Addons using C++

  • Overview of N-API
  • Using node-gyp and node-addon-api
  • Configuring application
  • Building and using C++ Api in Node.js

Scaling Node applications

  • The Child process model
  • exec, spawn, and fork functions
  • Using the Cluster module

Node.js Eco System

  • Node Packages
  • Packages of interest
  • Deciding Factors
  • Summary and Conclusion

 

Course Customization Options

To request a customized training for this course, please contact us to arrange.

Best selling courses

CLOUD COMPUTING

Enterprise Architecture

DATA SCIENCE

Tableau Basic

CYBER SECURITY / BLOCKCHAIN / NETWORK

Web Application Security

ARTIFICIAL INTELLIGENCE / MACHINE LEARNING / DEEP LEARNING

RPA with UiPath

PROGRAMMING / CODING

MATLAB Fundamentals