What is Node.Js?

What is Node.js?

Node.js is an open-source, cross-platform runtime environment for developing server-side and networking applications. Node.js applications are written in JavaScript and can be run within the Node.js runtime on OS X, Microsoft Windows, and Linux. Node.js is simple to implement and use if you already know JavaScript since Node.js is built in JavaScript. Node.js allows JavaScript developers to write both the client-side and server-side code without having to learn a completely different language.

Why Node.js?

Before Node.js was created, JavaScript was developed to run in the browser. With the creation of Node.js, JavaScript could now be run outside of the browser on a server of your choosing, including everyone's favorite local server! With the ability to run JavaScript outside of the browser, Node.js expanded what programmers can do with JavaScript on the server-side. With Node.js, you can now build a server that connects to the database to fetch and store data, authenticates user, validates the input, and handles logic. You can interact with the file system by interacting with the files and folders on the server. You can also interact with the database and query data from it. Lastly, you can create a web server for your application, which is mainly what Node.js is currently used for. Other benefits of Node.js are:

  • better efficiency and overall developer productivity
  • code sharing and reuse
  • speed and performance
  • easy knowledge sharing within a team
  • a huge number of free tools

Main Features of Node.js

  • Asynchronous and Event-Driven: Node doesn’t wait for results and doesn’t block other calls. Whenever it receives a request, it will immediately handle the request, after it finishes executing it will run a callback to notify the results of the execution. It’s running on a single thread with the event loop.
  • High Scalability: the events mechanism makes Node.js can be easily scalable.
  • It’s very fast: the non-blocking IO system makes Node.js blazing fast.
  • Community: the Node’s community is very active and always eager to help. With their support, the quality of the packages consistently improves.
  • NPM: is a tool that handles installing and updating reusable modules from the online collection. It manages the version and dependencies of the reusable modules that we are using for building our app.

--

--

--

Full-Stack Software Engineer / New York City / www.danielcreyes.dev

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

CSS Animations in React

How to Perform Lead Enrichment in Node.JS

Learn Node.js by example — Part 1

Performance testing with JMeter for dummies

AutoSwift — My Mod 4 Javascript Project

Can I develop a Web Application using Cross Platform Mobile frameworks

Announcing: js3d

Understanding NaN, isNaN() and Number.isNaN()

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Daniel C Reyes

Daniel C Reyes

Full-Stack Software Engineer / New York City / www.danielcreyes.dev

More from Medium

Why beginners should avoid using ExpressJS?

5 Express Middleware Libraries Every Developer Should Know

Using Github Actions to Deploy a React App and Express API Over SSH in 15 seconds

Writing Unit Tests for Your Node.js API