Basic & Advanced JavaScript and Node.JS

Inquire now

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 applications using Express.js
  • Understand how to handle authentication and authorization
  • 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:

  • 21 hours – 3 days

Course Content:

Day 1

JavaScript

Introduction oLanguage Overview 

  • Data Types oProgramming constructs
  • Handling Exceptions
  • Objects, Functions & Arrays
  • Timer Functions

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 ES6

New in ES6 oClasses olet and const

  • Arrow functions
  • Enhanced Object Literals
  • Destructuring
  • Spread Operator
  • Generators and Iterators
  • Symbols
  • Comprehensions
  • Async Programming using Promises

Using Babel.js 

Day 2 – 3

NODE.JS

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 JavaScript code
  • Using require() to modularize application code
  • Using npm for third-party modules oHandling 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 web applications using Express.js 

  • Installing Express.js
  • Routing
  • Parameters and queries in routing
  • Building views using view engine of choice (ejs / jade / handlebars
  • Using blocks for layout ODisplaying data
  • Working with forms
  • Serving files
  • Working with cookies and sessions
  • 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

Debugging Node Applications

  • Summary and Closing Remarks

 

 

Course Customization Options

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

Inquire now

Best selling courses

Duration 3 days – 21 hrs   Overview    This Portfolio Management Training Course is designed to provide banking professionals with a comprehensive understanding of how to effectively manage investment...

Duration 2 days – 14 hrs   Overview   This comprehensive Planning and Forecasting Training Course is designed to empower professionals with the tools and techniques necessary to accurately predict...

Duration 2 days – 14 hrs   Overview   This hands-on course provides an introduction to Splunk, a powerful platform for searching, monitoring, and analyzing machine-generated data. The training focuses...

Duration 3 days – 21 hrs   Overview.   This course is designed for fresh graduates aspiring to build a career in Data Science. It introduces the fundamentals of data...

Among the most popular and widely implemented NoSQL databases is MongoDB. Its scalability, robustness, and flexibility have made it extremely popular among the Fortune 500 and Global 500 companies who use it to implement a variety of activities including social communications, analytics, content management, archiving, and other activities.

PROGRAMMING / CODING

ASP.NET

SP.NET is a framework for developing dynamic web applications. It supports languages like VB.Net, C#, Jscript.Net, etc. The programming logic and content can be developed separately in Microsoft Asp.Net.

CYBER SECURITY

Physical Security

Duration 3 days – 21 hrs   Overview   This course provides a comprehensive introduction to physical security principles, policies, technologies, and practices. It covers methods to assess physical risks,...

Duration 5 days – 35 hrs   Overview   This intensive 5-day course is designed for professionals seeking advanced-level skills in Microsoft SQL Server’s BI stack: SSRS (SQL Server Reporting...

We use cookies on our website to personalize your experience by storing your preferences and recognizing repeat visits. By clicking “Accept”, you agree to the use of all cookies. You can also select “Cookie Settings” to adjust your preferences and provide more specific consent. Cookie Policy