Its a presentation about node.js. Here I have covered the basic things of node.js. Like what is node.js how it can be used. and explanation about some node.js frameworks
Plan
• What is Node.JS
• Event Driven
• Blocking Vs. No Blocking
• What can I do in node
• Install node.js
• A simple node.js example
• Create a web Server using Node.js
• Some node.js frameworks
• A demo with express.js
• Who Uses node.js
What is Node?
• JavaScript based software system
• Event driven
• Non- blocking
• Launched in 2009
• Founded by Ryan Dahl
Non-Blocking? Blocking? I’m so confused
• By introducing callbacks. Node can move on to
other requests and whenever the callback is
called, node will process is.
• You should read non-blocking code as « put
function and params in queue and fire
callback when you reach the end of the
queue »
• Blocking= return Non-Blocking= no return.
Only callbacks
What Can I Do in Node?
• Anything you want!
• Chat servers, Analytics & Crazy fast backends
• Socket.io library is a wicked way to build real
time apps
• Build a social Network! LinkedIn, Dropbox all
using Node.js
Using Modules
• In node.js require(‘ ’) is using a lot.
• Require is basically a way to import modules
to your application. Modules are basically
classes.
• They are a module of code that contain
functions which have been exported.
• Exported functions are basically public.
Install node.js
• Go to the NodeJS home page
• Click install to download the .msi installer
package
• Run it and follow the instrucitons, you now
have NPM (node package manager) and
Node.js installed
• Reset your computer to get everything
working in your command-line interface (CLI)
A simple node.js application
var http = require("http");
var server = http.createServer();
server.listen(8888);
function say(word) {
console.log(word);
}
function execute(someFunction, value) {
someFunction(value);
}
execute(say, "Beautiful Bangladesh");
Creating a web server
with
node.js
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type':
'text/plain'});
res.end('Hello Worldn');
}).listen(1337, "127.0.0.1");
console.log('Server running at
http://127.0.0.1:1337/');
Node.js Frameworks
Node.js is one of the most popular javascript
framework that allow to build scalable network
web applications. Node.js contains a different
kind of frameworks such as MVC framework, full-
stack framework, REST API and generators, lots of
libraries as server library that making it possible
to sun a web server without use of external
software such as Apache and Lighttpd. These
frameworks makes it more user-friendly and easy
to use, also supports a large number of features
and functionality to develop huge web
applications in just follow few steps.
Sails.js
Sails is one of the excellent framework that
make it easy to develop custom, enterprise-
grade and modern Node.js apps, also it’s good
for building charts, dashboards and multiple
games.
Total.js
Total.js is another great framework for
Node.js helps to create web pages and web
applications, also supports MVC architecture.
This is the open source modern framework
for building websites using HTML, javaScript
and CSS.
Partial.js
Partial js, framework for Node.js, Using HTML,
CSS and JavaScript developers can build large
scale of web applications and websites.
Features and architecture are same as total.js.
Koa.js
This framework for Node.js is designed by
team of Express. Koa.js is next generation
tool, which aims to be a smaller, more
expressive, and more robust foundation for
web applications and APIs.
Locomotive.js
Locomotive supports MVC pattern, RESTful
routes also builds on Express. This is one of
the most powerful web framework for
Node.js, present great features : -
1) convention over configuration
2) Routing Helpers
3) MVC Architecture
4) connect to any Database and more.
Express.js
Most Popular web framework for Node.js over
the internet and among web developers. Using
robust set of features developers can
create single and multi-page, and hybrid web
applications.
Flatiron.js
Flatiron.js is also a modern and next
generation web framework for developers that
helps to building impressive and huge web
application with its advance features.