Server Applications using Node.js

Node-JS800x420
24
May
  • Soujanya
  • 7 (Registered)
  • (0 Review)

Description:

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.

Duration:

3 days or  24 hours

Course Objective:

  • Understand the non-blocking nature of Node.js
  • Writing asynchronous code with callbacks 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

Target Audience:

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

Prerequisites:

  1. Must Have
    • Experience in application development in any programming language
    • Intermediate to advanced knowledge of the JavaScript language
  2. Good To Have
    • Exposure to any server technology (J2EE, .NET, Ruby etc)
  3. Infrastructure Requirement
    • js
    • Chrome
    • Internet Connection
    • Docker

Case Study:

  • Building a “Express like” web framework from the scratch
  • A Task Manager application using Express
  • Real-time chat application using Socket.io
  • Building RESTFul services with Hapi.js

Detailed Coverage:

  1. Introduction to Node.js
    • Installing Node.js
    • Node’s Event Loop
    • Alternatives to Node.js
    • Writing asynchronous code
  2. Unit Testing
    • Writing Tests Using Mocha.js
    • Assertion helpers in Chai.js
    • Mocks using sinon.js
    • Setting up a test harness for Node application
  3. 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
  4. Events and Streams
    • Understanding Events
    • EventEmitter class
    • Understanding Streams
    • Reading and writing streams
    • Using pipe()
  5. Accessing Local Resources
    • Process Object
    • Manipulating File System
    • Understanding Buffers
  6. Node.js and the web
    • Handling web requests
    • Building a web server
    • Understanding the need for web sockets
    • Realtime interaction using socket.io
  7. Building web applications using Express.j
    • Installing Express.js
    • Routing
    • Parameters and queries in routing
    • Using blocks for layout
    • Displaying data
    • Working with forms
    • Serving files
    • Working with cookies and sessions
    • Authentication and authorization
    • Error Handling
    • Persisting data in the database
  8. Deploying Node applications
    • Setting ‘ENVIRONMENT’
    • Setting appropriate environment variables
    • Handling appropriate logging levels
    • Ensure application auto restarting
    • Using a Process Manager
    • Using PM2
    • Using a Cache Server
  9. RxJs
    • Streams as data source
    • Difference between Iterators and Observables
    • Using RxJs for observable manipulation
    • Sequences
    • Using sequence operators such as map(), filter(), concatAll(), reduce(), zip()
    • Handling Errors
  10. Restful Server Applications using Hapi.js
    • Creating Server
    • Configuring Routes
    • Handling Requests & Responses
    • Serving Static Resources
    • Using Plugins
  11. Scaling Node applications
    • The Child process model
    • exec, spawn, and fork functions
    • Using the Cluster module
  12. Node.js Eco System
    • Node Packages
    • Packages of interest
    • Deciding Factors
  13. Debugging Node Applications
      • Node Inspector
      • Using –-inspect switch in node
      • Using ‘debug’ module
  14. Using the ‘debugger’ expression

 

Enroll Now

Course Content

Time: 3 days

Curriculum is empty

Instructor

0.0

0 rating

5 stars
0%
4 stars
0%
3 stars
0%
2 stars
0%
1 star
0%
Free

Customized, Immersive, Hands-On Driven

Includes

  • Real time virtual classes
  • Pre course reading material
  • Suppliment resources
  • Language: English
  • Certificate of completion

Enroll Now

Your Dream Course Is Only A Step Away





Your Dream Course Is Only A Step Away





Your Dream Course Is Only A Step Away





Your Dream Course Is Only A Step Away





Your Dream Course Is Only A Step Away