SlideShare ist ein Scribd-Unternehmen logo
1 von 39
MEAN STACK
Agenda
• Introduction
• What isLAMP?
• Requirements for amodernweb
• What isMEAN?
• What isMongoDB?
• What isExpress?
• What is AngularJS?
• What isNode.JS?
• Disadvantages of MEANSTACK
• Conclusion
• Any Questions?
Introduction
• MEAN is an opinionated
framework which simplifies
full stack JavaScript
and accelerates web
application development.
• MEAN represents a major shift in architecture and
mental models — from relational databases to
NoSQL and from server-side Model-View-Controller
to client-side, single-pageapplications.
• MEAN is an acronym for Mongo DB, Express
JS,Angular JSand Node.Js.
What is LAMP ?
• Linux
• Apache
• MySQL
• PHP
• LAMPstack is apopular open source web platform commonly
used to run dynamic web sites andservers.
• It includes Linux,Apache, MySQL,and PHP/Python/Perl andis
considered by many the platform of choice for development
and deployment of high performance web applications which
require asolid and reliable foundation.
Problems with LAMP?
• Apache is not the fastest web serveraround
• It’s hard to write good-to-read, reusable and fastPHP
code
• Frontend works with other languages thanthe
backend
• Toomany conversions (XMLto PHPto HTML,model
to SQL)
• There is no separated server-side and client-side
development
Requirements for a
modern web?
• Customers want fast web sites/fast responsetimes
• No page reloads
• Enterprises want to govirtual
o Onebox +Severalvirtual images =>Shared Hardware
o Systemwith minimal memory footprint/overhead needed
• Asmany concurrent requests aspossible
• Only load resources when needed (conditional
loading)
• Mobile/Responsive UIs
What is MEAN Stack?
MEAN Stack is a full-stack JavaScript solution that
helps you build fast, robust and maintainable
production web applications using MongoDB, Express,
AngularJS,and Node.js.
• 100%free , 100%Open Source
• 100%JavaScript (+JSONandHTML)
• 100%Web Standards
• Consistent Models from the backend to the frontend and back
• Useauniform language throughout your stack
o JavaScript(the language of the web)
o JSON(the data format of theweb)
o No conversion needed for the database
• UseJavaScriptwith agreat framework (compared to jQuery)
• Allows to start with the complete frontend development first
• Very low memoryfootprint/overhead
Processing model
MongoDB
MongoDB is across-platformdocument-oriented
database - classified asaNoSQLdatabase which
eschews the traditional table-based relational database
structure in favour of JSON-likedocumentswith
dynamic schemas.
What is MongoDB
• Developed by software company 10gen (now
MongoDB Inc.)
• FastNoSQLschemaless database written inC++
• Document-Oriented Storage
o JSON-styledocuments with dynamicschemas
• Full Index Support
o Index on anyattribute
o Replication & HighAvailability
• Auto-Sharding
o Scalehorizontally without compromisingfunctionality
MongoDB RDBMS
Collection Table
Document Row
Index Index
Embedded Document Join
Reference Foreign Key
Example
>db.mycol.insert({ _id: ObjectId(7df78ad8902c), title:
'MongoDB Overview', description: 'MongoDB is no sql
database', by: 'tutorials point', url:
'http://www.tutorialspoint. com', tags: ['mongodb',
'database', 'NoSQL'], likes: 100 })
MongoDB - Document
MongoDB - Collection
MongoDB – Query a
database
Advantages And
Disadvantages
Advantages
• Lightening fast.
• Auto sharding.
• Replication is very easy.
• Youcanperform rich queries, cancreate on the fly
indexes with asingle command.
Disadvantages
• Very unreliable
• Indexes take up alot of RAM.
o B-tree indexes
Express JS
Expressis aminimal and flexible node.js web
application framework, providing arobustset of
features for building singleand multi-page, and hybrid
web applications.
What is Express ?
• Node JSbased webframework
• Basedon connect middleware
• Makesusageof Node JSeveneasier
• Easyto implement RESTAPI
• Easyto implement sessionmanagement
• Supports several template rendering engines (Jade,EJS)
o Supports partials -> soyou cansplit your HTMLin
fragments
• Asynchronous
• Implements MVCpattern
Express – What is it?
• Allows to set up middlewares to respond to HTTP
Requests.
• Defines arouting table which is used to perform
different action based on HTTPMethod and URL.
• Allows to dynamically render HTMLPagesbased on
passingarguments to templates.
Example
var express=require('express');
var app =express();
app.get('/', function (req,res)
{
res.send('Hello World!'); });
app.listen(3000, function ()
{
console.log('Example app listening on port 3000!');
});
Advantages And
Disadvantages
Advantages
• Regardlessof complexity, there should be veryfew
roadblocks if you know JavaScriptwell.
• Supports concurrency well.
• Fastand the performance is comparable with Golang
micro frameworks and Elixir's Phoenix.
Disadvantages
• There is no built in error handlingmethods.
What is Angular?
AngularJSis an open-sourceJavaScript
framework, maintained byGoogle,that assists with
running single-page applications.
• Its goal is to augment browser-based applications
with model–view–controller (MVC) capability, in an
effort to make both development andtestingeasier.
AngularJS
• JavaScriptframework developed by Google
• Basedon Model-View-* Pattern (client-side)
o MVC/MVVM
o Bi-Directional DataBinding
• Declarative Programming (focus on what – not thehow!)
o Directives are integrated in HTMLdirectly
o DOMManipulations completely hidden
• Great for Frontenddevelopment
o Great for SPA(Single PageApplications)
o Great for mobileapps
• Very modular and extensible
o Makestesting an ease
• Great Browser support (>IE8)
• Well documented
Two Way Data-binding
AngularJs directives
• ng-app
o Declares an element as a root element of the application
allowing behaviour to be modified through custom HTML
tags.
• ng-bind
o Automatically changesthe text of aHTMLelement tothe
value of agivenexpression.
• ng-model
o Similar to ng-bind, but allows two-way data bindingbetween
the view and thescope.
• ng-controller
o Specifies aJavaScriptcontroller classthat evaluates HTML
expressions.
AngularJs directives
• ng-repeat
o Instantiate an element once per item from acollection.
• ng-show& ng-hide
o Conditionally show or hide an element, depending onthe
value of abooleanexpression.
• ng-switch
o Conditionally instantiate one template from aset ofchoices,
depending on the value of aselectionexpression.
• ng-view
o Thebasedirective responsible for handling routes that
resolve JSONbefore rendering templates driven by specified
controllers.
Advantages and
Disadvantages
Advantages
•Fastdevelopment
•Makes developing SPAeasy
•Awesome performance
•Make appsscalable
Disadvantages
•Good for IOdriven apps only (not games)
Node JS
Node.js is aplatform built on Chrome'sJavaScript
runtime for easily building fast, scalablenetwork
applications.
• Node.js usesan event-driven, non-blockingI/O
model that makesit lightweight andefficient,
perfect for data-intensive real-time applicationsthat
run acrossdistributed devices.
What is Node JS?
• Written in C/C++
o Canalso useClibraries
• Built on top of Chrome’s V8engine – sopure
JavaScript!
o Therefore based on latest ECMAScript5
• Framework to build asynchronous I/Oapplications
• SingleThreaded – no concurrency bugs– no
deadlocks!
o Not internally though – but we’ll get to that
• Onenode process =one CPUCore
What is Node JS continue
• Caneasily handle 10k concurrent connections
o Doesn’t have any problems with concurrency
o Doesn’t create much overhead (CPU/Memory)
• Easilyscalable (just create acluster)
• Very fast (well, it’s mostly Ccode)
• Installation and first server start within lessthan5
minutes
o REST-APIthat replies to GETrequests canbe
implemented in lessthan 5 minutes aswell!
• It’s not awebframework!
Blocking I/O vs.
Non-Blocking I/O
Example
var http =require('http');
http.createServer(function (req, res)
{
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('HelloWorldn');
}).listen(80);
console.log('Server listening on port 80');
Advantage and
Disadvantage
Advantages
• Node.js is fast
• Theever-growing NPM
• Real-time web apps
• Productivity
Disadvantages
• JavaScript's semantics and culture
Disadvantages of mean
Stack
• There are still no general JScodingguidelines
• MongoDB is not asrobust asan SQLserver
o Thissecurity is what they sacrifice to gain speed
• Onceyou’ve created the first site with this
technology, it’s hard to go back tothe old approach
Conclusion
In the end, Mean is a full stack, Javascript, web
application framework. If you require a fast, easy,
simple way to create a modern, responsive, dynamic
web site then MEANwould be agreat solution.
PPT Source : Krishna Prasad
References
• http://www.mean.io
• https://angularjs.org
• http://mongodb.org
• https://nodejs.org
• http://expressjs.com
• http://slideshare.net
Any Questions ??
THANK YOU

Weitere ähnliche Inhalte

Was ist angesagt?

Beginning MEAN Stack
Beginning MEAN StackBeginning MEAN Stack
Beginning MEAN Stack
Rob Davarnia
 
Isomorphic JavaScript: #DevBeat Master Class
Isomorphic JavaScript: #DevBeat Master ClassIsomorphic JavaScript: #DevBeat Master Class
Isomorphic JavaScript: #DevBeat Master Class
Spike Brehm
 
MEAN Stack WeNode Barcelona Workshop
MEAN Stack WeNode Barcelona WorkshopMEAN Stack WeNode Barcelona Workshop
MEAN Stack WeNode Barcelona Workshop
Valeri Karpov
 

Was ist angesagt? (19)

Beginning MEAN Stack
Beginning MEAN StackBeginning MEAN Stack
Beginning MEAN Stack
 
Web Applications Development with MEAN Stack
Web Applications Development with MEAN StackWeb Applications Development with MEAN Stack
Web Applications Development with MEAN Stack
 
The MEAN Stack
The MEAN StackThe MEAN Stack
The MEAN Stack
 
Get MEAN! Node.js and the MEAN stack
Get MEAN!  Node.js and the MEAN stackGet MEAN!  Node.js and the MEAN stack
Get MEAN! Node.js and the MEAN stack
 
Introduction to mean stack
Introduction to mean stackIntroduction to mean stack
Introduction to mean stack
 
Mean full stack development
Mean full stack developmentMean full stack development
Mean full stack development
 
JavaScript Performance (at SFJS)
JavaScript Performance (at SFJS)JavaScript Performance (at SFJS)
JavaScript Performance (at SFJS)
 
Building an E-commerce website in MEAN stack
Building an E-commerce website in MEAN stackBuilding an E-commerce website in MEAN stack
Building an E-commerce website in MEAN stack
 
Kick start your journey as mern stack developer
Kick start your journey as mern stack developerKick start your journey as mern stack developer
Kick start your journey as mern stack developer
 
Building your first MEAN application
Building your first MEAN applicationBuilding your first MEAN application
Building your first MEAN application
 
Starting from Scratch with the MEAN Stack
Starting from Scratch with the MEAN StackStarting from Scratch with the MEAN Stack
Starting from Scratch with the MEAN Stack
 
Future development stack ~ MeteorJS
Future development stack ~ MeteorJSFuture development stack ~ MeteorJS
Future development stack ~ MeteorJS
 
Client Vs. Server Rendering
Client Vs. Server RenderingClient Vs. Server Rendering
Client Vs. Server Rendering
 
MongoDB Days Silicon Valley: Building Applications with the MEAN Stack
MongoDB Days Silicon Valley: Building Applications with the MEAN StackMongoDB Days Silicon Valley: Building Applications with the MEAN Stack
MongoDB Days Silicon Valley: Building Applications with the MEAN Stack
 
From MEAN to the MERN Stack
From MEAN to the MERN StackFrom MEAN to the MERN Stack
From MEAN to the MERN Stack
 
Rapid Application Development with MEAN Stack
Rapid Application Development with MEAN StackRapid Application Development with MEAN Stack
Rapid Application Development with MEAN Stack
 
Isomorphic web application
Isomorphic web applicationIsomorphic web application
Isomorphic web application
 
Isomorphic JavaScript: #DevBeat Master Class
Isomorphic JavaScript: #DevBeat Master ClassIsomorphic JavaScript: #DevBeat Master Class
Isomorphic JavaScript: #DevBeat Master Class
 
MEAN Stack WeNode Barcelona Workshop
MEAN Stack WeNode Barcelona WorkshopMEAN Stack WeNode Barcelona Workshop
MEAN Stack WeNode Barcelona Workshop
 

Ähnlich wie What is Mean Stack Development ?

Intro to SPA using JavaScript & ASP.NET
Intro to SPA using JavaScript & ASP.NETIntro to SPA using JavaScript & ASP.NET
Intro to SPA using JavaScript & ASP.NET
Alan Hecht
 
Intro to node.js - Ran Mizrahi (28/8/14)
Intro to node.js - Ran Mizrahi (28/8/14)Intro to node.js - Ran Mizrahi (28/8/14)
Intro to node.js - Ran Mizrahi (28/8/14)
Ran Mizrahi
 
web development with mern stack in power point
web development with mern stack in power pointweb development with mern stack in power point
web development with mern stack in power point
RAMKUMARRIT20
 

Ähnlich wie What is Mean Stack Development ? (20)

MEAN Stack
MEAN StackMEAN Stack
MEAN Stack
 
An introduction to Node.js
An introduction to Node.jsAn introduction to Node.js
An introduction to Node.js
 
Oracle application container cloud back end integration using node final
Oracle application container cloud back end integration using node finalOracle application container cloud back end integration using node final
Oracle application container cloud back end integration using node final
 
Top 10 frameworks of node js
Top 10 frameworks of node jsTop 10 frameworks of node js
Top 10 frameworks of node js
 
Intro to SPA using JavaScript & ASP.NET
Intro to SPA using JavaScript & ASP.NETIntro to SPA using JavaScript & ASP.NET
Intro to SPA using JavaScript & ASP.NET
 
Building Modern Web Apps with MEAN Stack
Building Modern Web Apps with MEAN StackBuilding Modern Web Apps with MEAN Stack
Building Modern Web Apps with MEAN Stack
 
Meanstack overview
Meanstack overviewMeanstack overview
Meanstack overview
 
Mean Stack
Mean StackMean Stack
Mean Stack
 
Introduction to node.js by jiban
Introduction to node.js by jibanIntroduction to node.js by jiban
Introduction to node.js by jiban
 
9 Best JavaScript Frameworks To Choose
9 Best JavaScript Frameworks To Choose9 Best JavaScript Frameworks To Choose
9 Best JavaScript Frameworks To Choose
 
Beginners Node.js
Beginners Node.jsBeginners Node.js
Beginners Node.js
 
Java Script recruiting
Java Script recruitingJava Script recruiting
Java Script recruiting
 
Node js installation steps.pptx slide share ppts
Node js installation steps.pptx slide share pptsNode js installation steps.pptx slide share ppts
Node js installation steps.pptx slide share ppts
 
Advanced Web Technology.pptx
Advanced Web Technology.pptxAdvanced Web Technology.pptx
Advanced Web Technology.pptx
 
Intro to Sails.js
Intro to Sails.jsIntro to Sails.js
Intro to Sails.js
 
Intro to node.js - Ran Mizrahi (27/8/2014)
Intro to node.js - Ran Mizrahi (27/8/2014)Intro to node.js - Ran Mizrahi (27/8/2014)
Intro to node.js - Ran Mizrahi (27/8/2014)
 
Intro to node.js - Ran Mizrahi (28/8/14)
Intro to node.js - Ran Mizrahi (28/8/14)Intro to node.js - Ran Mizrahi (28/8/14)
Intro to node.js - Ran Mizrahi (28/8/14)
 
Java script framework
Java script frameworkJava script framework
Java script framework
 
Introduction to MERN Stack
Introduction to MERN StackIntroduction to MERN Stack
Introduction to MERN Stack
 
web development with mern stack in power point
web development with mern stack in power pointweb development with mern stack in power point
web development with mern stack in power point
 

Kürzlich hochgeladen

The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
heathfieldcps1
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
heathfieldcps1
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
kauryashika82
 

Kürzlich hochgeladen (20)

INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
Food Chain and Food Web (Ecosystem) EVS, B. Pharmacy 1st Year, Sem-II
Food Chain and Food Web (Ecosystem) EVS, B. Pharmacy 1st Year, Sem-IIFood Chain and Food Web (Ecosystem) EVS, B. Pharmacy 1st Year, Sem-II
Food Chain and Food Web (Ecosystem) EVS, B. Pharmacy 1st Year, Sem-II
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
Role Of Transgenic Animal In Target Validation-1.pptx
Role Of Transgenic Animal In Target Validation-1.pptxRole Of Transgenic Animal In Target Validation-1.pptx
Role Of Transgenic Animal In Target Validation-1.pptx
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdf
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 
Energy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural Resources
Energy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural ResourcesEnergy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural Resources
Energy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural Resources
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptx
 
Asian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptxAsian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptx
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
 
PROCESS RECORDING FORMAT.docx
PROCESS      RECORDING        FORMAT.docxPROCESS      RECORDING        FORMAT.docx
PROCESS RECORDING FORMAT.docx
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
 

What is Mean Stack Development ?

  • 2. Agenda • Introduction • What isLAMP? • Requirements for amodernweb • What isMEAN? • What isMongoDB? • What isExpress? • What is AngularJS? • What isNode.JS? • Disadvantages of MEANSTACK • Conclusion • Any Questions?
  • 3. Introduction • MEAN is an opinionated framework which simplifies full stack JavaScript and accelerates web application development. • MEAN represents a major shift in architecture and mental models — from relational databases to NoSQL and from server-side Model-View-Controller to client-side, single-pageapplications. • MEAN is an acronym for Mongo DB, Express JS,Angular JSand Node.Js.
  • 4. What is LAMP ? • Linux • Apache • MySQL • PHP • LAMPstack is apopular open source web platform commonly used to run dynamic web sites andservers. • It includes Linux,Apache, MySQL,and PHP/Python/Perl andis considered by many the platform of choice for development and deployment of high performance web applications which require asolid and reliable foundation.
  • 5. Problems with LAMP? • Apache is not the fastest web serveraround • It’s hard to write good-to-read, reusable and fastPHP code • Frontend works with other languages thanthe backend • Toomany conversions (XMLto PHPto HTML,model to SQL) • There is no separated server-side and client-side development
  • 6. Requirements for a modern web? • Customers want fast web sites/fast responsetimes • No page reloads • Enterprises want to govirtual o Onebox +Severalvirtual images =>Shared Hardware o Systemwith minimal memory footprint/overhead needed • Asmany concurrent requests aspossible • Only load resources when needed (conditional loading) • Mobile/Responsive UIs
  • 7. What is MEAN Stack? MEAN Stack is a full-stack JavaScript solution that helps you build fast, robust and maintainable production web applications using MongoDB, Express, AngularJS,and Node.js.
  • 8. • 100%free , 100%Open Source • 100%JavaScript (+JSONandHTML) • 100%Web Standards • Consistent Models from the backend to the frontend and back • Useauniform language throughout your stack o JavaScript(the language of the web) o JSON(the data format of theweb) o No conversion needed for the database • UseJavaScriptwith agreat framework (compared to jQuery) • Allows to start with the complete frontend development first • Very low memoryfootprint/overhead
  • 10. MongoDB MongoDB is across-platformdocument-oriented database - classified asaNoSQLdatabase which eschews the traditional table-based relational database structure in favour of JSON-likedocumentswith dynamic schemas.
  • 11. What is MongoDB • Developed by software company 10gen (now MongoDB Inc.) • FastNoSQLschemaless database written inC++ • Document-Oriented Storage o JSON-styledocuments with dynamicschemas • Full Index Support o Index on anyattribute o Replication & HighAvailability • Auto-Sharding o Scalehorizontally without compromisingfunctionality
  • 12. MongoDB RDBMS Collection Table Document Row Index Index Embedded Document Join Reference Foreign Key
  • 13. Example >db.mycol.insert({ _id: ObjectId(7df78ad8902c), title: 'MongoDB Overview', description: 'MongoDB is no sql database', by: 'tutorials point', url: 'http://www.tutorialspoint. com', tags: ['mongodb', 'database', 'NoSQL'], likes: 100 })
  • 16. MongoDB – Query a database
  • 17. Advantages And Disadvantages Advantages • Lightening fast. • Auto sharding. • Replication is very easy. • Youcanperform rich queries, cancreate on the fly indexes with asingle command. Disadvantages • Very unreliable • Indexes take up alot of RAM. o B-tree indexes
  • 18. Express JS Expressis aminimal and flexible node.js web application framework, providing arobustset of features for building singleand multi-page, and hybrid web applications.
  • 19. What is Express ? • Node JSbased webframework • Basedon connect middleware • Makesusageof Node JSeveneasier • Easyto implement RESTAPI • Easyto implement sessionmanagement • Supports several template rendering engines (Jade,EJS) o Supports partials -> soyou cansplit your HTMLin fragments • Asynchronous • Implements MVCpattern
  • 20. Express – What is it? • Allows to set up middlewares to respond to HTTP Requests. • Defines arouting table which is used to perform different action based on HTTPMethod and URL. • Allows to dynamically render HTMLPagesbased on passingarguments to templates.
  • 21. Example var express=require('express'); var app =express(); app.get('/', function (req,res) { res.send('Hello World!'); }); app.listen(3000, function () { console.log('Example app listening on port 3000!'); });
  • 22. Advantages And Disadvantages Advantages • Regardlessof complexity, there should be veryfew roadblocks if you know JavaScriptwell. • Supports concurrency well. • Fastand the performance is comparable with Golang micro frameworks and Elixir's Phoenix. Disadvantages • There is no built in error handlingmethods.
  • 23. What is Angular? AngularJSis an open-sourceJavaScript framework, maintained byGoogle,that assists with running single-page applications. • Its goal is to augment browser-based applications with model–view–controller (MVC) capability, in an effort to make both development andtestingeasier.
  • 24. AngularJS • JavaScriptframework developed by Google • Basedon Model-View-* Pattern (client-side) o MVC/MVVM o Bi-Directional DataBinding • Declarative Programming (focus on what – not thehow!) o Directives are integrated in HTMLdirectly o DOMManipulations completely hidden • Great for Frontenddevelopment o Great for SPA(Single PageApplications) o Great for mobileapps • Very modular and extensible o Makestesting an ease • Great Browser support (>IE8) • Well documented
  • 26. AngularJs directives • ng-app o Declares an element as a root element of the application allowing behaviour to be modified through custom HTML tags. • ng-bind o Automatically changesthe text of aHTMLelement tothe value of agivenexpression. • ng-model o Similar to ng-bind, but allows two-way data bindingbetween the view and thescope. • ng-controller o Specifies aJavaScriptcontroller classthat evaluates HTML expressions.
  • 27. AngularJs directives • ng-repeat o Instantiate an element once per item from acollection. • ng-show& ng-hide o Conditionally show or hide an element, depending onthe value of abooleanexpression. • ng-switch o Conditionally instantiate one template from aset ofchoices, depending on the value of aselectionexpression. • ng-view o Thebasedirective responsible for handling routes that resolve JSONbefore rendering templates driven by specified controllers.
  • 28. Advantages and Disadvantages Advantages •Fastdevelopment •Makes developing SPAeasy •Awesome performance •Make appsscalable Disadvantages •Good for IOdriven apps only (not games)
  • 29. Node JS Node.js is aplatform built on Chrome'sJavaScript runtime for easily building fast, scalablenetwork applications. • Node.js usesan event-driven, non-blockingI/O model that makesit lightweight andefficient, perfect for data-intensive real-time applicationsthat run acrossdistributed devices.
  • 30. What is Node JS? • Written in C/C++ o Canalso useClibraries • Built on top of Chrome’s V8engine – sopure JavaScript! o Therefore based on latest ECMAScript5 • Framework to build asynchronous I/Oapplications • SingleThreaded – no concurrency bugs– no deadlocks! o Not internally though – but we’ll get to that • Onenode process =one CPUCore
  • 31. What is Node JS continue • Caneasily handle 10k concurrent connections o Doesn’t have any problems with concurrency o Doesn’t create much overhead (CPU/Memory) • Easilyscalable (just create acluster) • Very fast (well, it’s mostly Ccode) • Installation and first server start within lessthan5 minutes o REST-APIthat replies to GETrequests canbe implemented in lessthan 5 minutes aswell! • It’s not awebframework!
  • 33. Example var http =require('http'); http.createServer(function (req, res) { res.writeHead(200, {'Content-Type': 'text/plain'}); res.end('HelloWorldn'); }).listen(80); console.log('Server listening on port 80');
  • 34. Advantage and Disadvantage Advantages • Node.js is fast • Theever-growing NPM • Real-time web apps • Productivity Disadvantages • JavaScript's semantics and culture
  • 35. Disadvantages of mean Stack • There are still no general JScodingguidelines • MongoDB is not asrobust asan SQLserver o Thissecurity is what they sacrifice to gain speed • Onceyou’ve created the first site with this technology, it’s hard to go back tothe old approach
  • 36. Conclusion In the end, Mean is a full stack, Javascript, web application framework. If you require a fast, easy, simple way to create a modern, responsive, dynamic web site then MEANwould be agreat solution. PPT Source : Krishna Prasad
  • 37. References • http://www.mean.io • https://angularjs.org • http://mongodb.org • https://nodejs.org • http://expressjs.com • http://slideshare.net