Skip to content
Related Articles
Get the best out of our app
GeeksforGeeks App
Open App
geeksforgeeks
Browser
Continue

Related Articles

Introduction to Node.js

Improve Article
Save Article
Like Article
Improve Article
Save Article
Like Article

Introduction: Node.js is an open-source and cross-platform runtime environment for executing JavaScript code outside a browser. You need to remember that NodeJS is not a framework and it’s not a programming language. Most people are confused and understand it’s a framework or a programming language. We often use Node.js for building back-end services like APIs like Web App or Mobile App. It’s used in production by large companies such as Paypal, Uber, Netflix, Walmart, and so on.

Node.js = Runtime Environment + JavaScript Library

Features of NodeJS: There are other programming languages also which we can use to build back-end services so what makes Node.js different I am going to explain.

  1. It’s easy to get started and can be used for prototyping and agile development
  2. It provides fast and highly scalable services
  3. It uses JavaScript everywhere, so it’s easy for a JavaScript programmer to build back-end services using Node.js
  4. Source code cleaner and consistent.
  5. Large ecosystem for open source library.
  6. It has Asynchronous or Non-blocking nature.

Advantages of NodeJS: Here are the benefits of using Node.js 
 

  1. Easy Scalability: Developers prefer to use Node.js because it is easily scaling the application in both horizontal and vertical directions. We can also add extra resources during the scalability of the application.
  2. Real-time web apps: If you are building a web app you can also use PHP, and it will take the same amount of time when you use Node.js, But if I am talking about building chat apps or gaming apps Node.js is much more preferable because of faster synchronization. Also, the event loop avoids HTTP overloaded for Node.js development.
  3. Fast Suite: NodeJs runs on the V8 engine developed by Google. Event loop in NodeJs handles all asynchronous operation so NodeJs acts like a fast suite and all the operations can be done quickly like reading or writing in the database, network connection, or file system
  4. Easy to learn and code: NodeJs is easy to learn and code because it uses JavaScript. If you are a front-end developer and have a good grasp of JavaScript you can easily learn and build the application on NodeJS
  5. Advantage of Caching: It provides the caching of a single module. Whenever there is any request for the first module, it gets cached in the application memory, so you don’t need to re-execute the code.
  6. Data Streaming: In NodeJs HTTP request and response are considered as two separate events. They are data stream so when you process a file at the time of loading it will reduce the overall time and will make it faster when the data is presented in the form of transmissions. It also allows you to stream audio and video files at lightning speed.
  7. Hosting: PaaS (Platform as a Service) and Heroku are the hosting platforms for NodeJS application deployment which is easy to use without facing any issue.
  8. Corporate Support: Most of the well-known companies like Walmart, Paypal, Microsoft, Yahoo are using NodeJS for building the applications. NodeJS uses JavaScript, so most of the companies are combining front-end and backend Teams together into a single unit.

Concepts
The following diagram depicts some important parts of Node.js that are useful and help us understand it better.

 

Application of NodeJS: NodeJS should be preferred to build:

  • Real-Time Chats,
  • Complex Single-Page applications,
  • Real-time collaboration tools,
  • Streaming apps
  • JSON APIs based application

Installing Node and using It:

  • Using Website: 
     

1. You can visit the link Download Node and download LTS version.

2. After installing the node you can check your node version in command prompt using command..

~ $node --version

3. After that, you can just create a folder firstapp and add a file here for example app.js. To run this file you need to execute command…

cd firstapp
$node app.js

4. Node Modules: There are some built-in modules that you can use to create your applications. Some popular modules are- OS, fs, events, HTTP, URL and then you can include these modules in your file using these lines.

var fs = require('fs');

5. Here is an example of how to include an HTTP module to build the server…
 

Javascript




// Require http module
var http = require("http"); 
   
// Create server
http.createServer(function (req, res) { 
    
    // Send the HTTP header  
    // HTTP Status: 200 : OK 
    // Content Type: text/plain 
    // Write a response to the client
    res.write('Geeks For Geeks');
    // End the response 
    res.end();
   // The server object listens on port 5000
}).listen(5000);

This will listen to the server on port 5000. Once you will run your file in command prompt it will execute your file and listen to the server on this port. You can also create your own module and include it in your file. 

 

 

 

  • Using NPM: NPM is a Node Package Manager that provides packages to download and use. It contains all the files and modules that you require in your application. To install any package you need to execute a command… 
     
npm install 

This is an example of using the Events module. 

javascript




var events = require('events');
var eventEmitter = new events.EventEmitter();
 
// Create an event handler:
var myEventHandler = function () {
   
    console.log('Welcome to GeeksforGeeks');
}
 
// Assign the event handler to an event:
eventEmitter.on('geeks', myEventHandler);
 
// Fire the 'geeks' event:
eventEmitter.emit('geeks');

So this is how you can start with node and build your own applications. There are some frameworks of the node which you can use to build your applications. Some popular frameworks of node are…Express.js, Socket.io, Koa.js, Meteor.js, Sail.js.
 


My Personal Notes arrow_drop_up
Last Updated : 18 Mar, 2023
Like Article
Save Article
Similar Reads