0% found this document useful (0 votes)
9 views23 pages

Node.js

Uploaded by

nimrxh1999
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views23 pages

Node.js

Uploaded by

nimrxh1999
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 23

Course:

Full Stack
Web
Developmen
t
Nimra Idrees
Topic: Node.js
Introduction

Node.js is an open-source,
cross-platform JavaScript Ryan Dahl developed it in 2009,
Developers use Node.js to
runtime environment and and its latest iteration, version
create server-side web
library for running web 15.14, was released in April
applications
applications outside the client's 2021.
browser.

Perfect for data-intensive Node.js is a runtime Built on the V8 JavaScript


applications since it uses an environment that allows engine from Chrome, which
asynchronous, event-driven JavaScript to be executed on compiles JavaScript into
model. the server side. efficient machine code.

12/09/2024 By Nimra Idrees 3


Node.js operates on a single-threaded event-driven architecture, utilizing
an event loop to handle multiple concurrent operations without blocking.

When a client sends a request to a Node.js server, the request is added to


an event queue.

The event loop continuously checks this queue and processes each
request.

Working
If a request involves an I/O operation, Node.js offloads it to the system
kernel, which handles it asynchronously.

Once the I/O operation is complete, the kernel notifies Node.js, executing
the corresponding callback function.

This non-blocking I/O and event-driven model allows Node.js to handle


many simultaneous connections efficiently, making it ideal for building
scalable, high-performance network applications.

12/09/2024 By Nimra Idrees 4


Execution Time Is Very Fast And It Runs Very
Quickly.

More than 50,000 bundles available in the


Node Package Manager
Why do
NodeJs do not need to wait for an API to
we use return data
Node.js
Loading time for an audio or video is
reduced by NodeJs

NodeJs is open-source and it is nothing but


a JavaScript framework
12/09/2024 By Nimra Idrees 5
Architecture
Features / Design – what is the
of NodeJs
difference
Asynchronous in Nature and Event driven

Single Threaded Architecture Scalable

Quick Execution Time for Code Compatibility on the Cross Platforms

No Buffering Uses JavaScript

Fast Data Streaming

12/09/2024 By Nimra Idrees 6


Is Node.js a Programming Language?

• Node.js is not a programming language; it is a runtime environment allowing you to


execute JavaScript code on the server side, outside a web browser. Built on the V8
JavaScript engine from Chrome, Node.js compiles JavaScript into machine code for efficient
execution. It extends JavaScript capabilities by providing additional features and libraries
for server-side development, such as file system access, network communication, and
asynchronous I/O operations.

• While JavaScript is the programming language used with Node.js, the runtime environment
provides the tools and frameworks to build scalable and high-performance server
applications. Node.js’s non-blocking, event-driven architecture makes it ideal for real-time
applications, web servers, APIs, and more. In summary, Node.js is a robust environment
that leverages JavaScript to enable server-side programming, but it is not a programming
language.

12/09/2024 By Nimra Idrees 7


Node.js Architecture

12/09/2024 By Nimra Idrees 8


Parts of Node.js

12/09/2024 By Nimra Idrees 9


Modules
• Modules are like JavaScript
libraries that can be used in a
Node.js application to include a
set of functions.
• In order to include a module in a
Node.js application, use
the require() function with the
parenthesis containing the
name of the module.

12/09/2024 By Nimra Idrees 10


Modules

12/09/2024 By Nimra Idrees 11


Console

• The console is a module that


provides a method for
debugging that is similar to the
basic JavaScript console
provided by internet browsers. It
prints messages to stdout and
stderr.

12/09/2024 By Nimra Idrees 12


Cluster • Node.js is built-on on
the concept of single-
threaded
programming. Cluster
is a module that allows
multi-threading by
creating child
processes that share
the same server port
and run
simultaneously.

12/09/2024 By Nimra Idrees 13


Global

Global objects in
Node.js are available
in all modules.
These objects are
functions, modules,
strings, etc.

12/09/2024 By Nimra Idrees 14


Error Handling

12/09/2024 By Nimra Idrees 15


Error Handling
• Errors in Node.js are handled
through exceptions. For
example, let's handle the error
that would occur when we
divide a number by zero. This
error would crash the Node.js
application, so we should handle
this error to continue with the
normal execution of the
application.

12/09/2024 By Nimra Idrees 16


Readable: These are the types of streams
from which data can be read

Writable: These are the types of streams


to which data can be written
Streamin
g Duplex: These are both readable and
writable streams

Transform: Streams that can manipulate


the data while it is being read or written

12/09/2024 By Nimra Idrees 17


Domain

Internal Binding: External Binding:


Error emitter Error emitter is
executes its code explicitly added
inside the run to a domain via
method its add method

12/09/2024 By Nimra Idrees 18


Buffer & DNS
Buffer is a module that allows the handling
of streams that contain only binary data. An
empty buffer of length '10' can be created by
this method:

DNS module is used to connect to a DNS


server and perform name resolution by
using the following method:

DNS module is also used for performing


name resolution without a network
communication by using the following
method:

12/09/2024 By Nimra Idrees 19


Debugger
• Node.js includes a debugging utility that can be accessed by a
built-in debugging client.
• Node.js debugger is not feature-packed but supports the simple
inspection of code.
• The debugger can be used in the terminal by using the 'inspect'
keyword before the name of the JavaScript file.
• In order to inspect a file—myscript.js, for example—you can follow
this method:

12/09/2024 By Nimra Idrees 20


Real-Time APIs and
Web Servers
Applications Microservices

Applications of Single-Page
Streaming Command-
Node.js Applications
Applications Line Tools
(SPAs)

Internet of
Things (IoT)

12/09/2024 By Nimra Idrees 21


Node.js Use Cases

12/09/2024 By Nimra Idrees 22


‫!شکریہ‬
Thankyou

You might also like