SlideShare a Scribd company logo
Ganesh P A, Technical Architect
 A WALK THROUGH - JAVASCRIPT
FRAMEWORKS
JAVASCRIPT MV* FRAMEWORKS
 Organize code using
variations of MVC
Pattern
 Helps in
 Readable, structured,
testable and maintainable
code
 Tying together a DOM
manipulation library
 Templating
 Routing
BIG FOUR
Javascript Frameworks Comparison
 Maintained by Google and
community
 Initially Released on 2009
 Current stable release 1.3.x
(Feb 2015)
 ~110 kb (gzip/minified)
Miško Hevery and Adam Abrons
 Developed and is maintained by
Steve Sanderson, a Microsoft
employee
 It is a personal open-source project,
and not a Microsoft product.
 Released on July 5, 2010
 Current version 3.3.0 (Feb 2015)
 ~21 kb (gzip/minified)
 Created by Jeremy Ashkenas,
 Initially Released on October
2010,
 Current stable release 1.1.2
 ~6.5 kb (gzip/minified)
 Created by Yehuda Katz, a
member of the jQuery, Ruby on
Rails and SproutCore core
teams.
 Initially released as the
SproutCore 2.0 framework later
renamed as Ember.js
 Initial release : 2011
 Current stable release 1.10.0
 ~102 kb (gzip/minified)
 Comparison
 Scoring system
 OK  Not Good Good
 How fast can I get up and running from homepage link?
 HELLO WORLD
 Github
 https://github.com/jashkenas/backbone
 Github
 https://github.com/emberjs/ember.js

 Github
 https://github.com/angular/angular.js
 Github
 https://github.com/knockout/knockout
 DEPENDENCIES
Javascript Frameworks Comparison
Javascript Frameworks Comparison
 NO DEPENDENCIES
 NO DEPENDENCIES
DATA BINDING
 Process that establishes a connection between the
application UI (User Interface) and business logic
 Data-binding is fully
supported
 Data can be bind into
many attributes like
text,value, options,
enable etc
 Provides Option for
Creating custom
bindings
 Data-binding is fully supported
 Models use standard JSON properties (e.g. car.color = "red";)
 Provides Option for Creating custom bindings
 Data-binding is not supported
by default.
 There are plugins available to
support Data-binding
 Data-binding is fully supported
 Models use getters and setters but the binding is
automatically and better than Backbone.
 Used for routing your applications URL's when using
hash tags(#) and/or HTML5 history API
 Maps an url to a javascript function
ROUTERS
 /person/12/101
 Routing is very simple
 Router is similar to Backbone’s
 /person/12/101
 Router is extremely capable, but very complex
 Supported embedded routes
 /person/12/101
 Knockout does not support routing by default
 Still Routing is easily configurable by following third party libraries
VIEWS
 How the stuffs are displayed in the screen
 Simple and straight forward.
 Easy for developer with JQuery and DOM skills
 Simply extend Backbone.View, grab an element and put stuff in it
 No Official Templating, but easy to add using
 Uses HTML as templating language
 Automatically pulls in HTML templates via AJAX when needed
 Extensive view type support
 Very easy to create re-usable components
 Handlebars are used for templating
 Uses HTML as templating language
Supports
 Native templates
 Using default control flow bindings
 String based templates
 Third-party template engine
TESTING
 Support for testing application
 No default test solution;
 Test it your own
 Can use following third party solutions
 Fantastic test support.
 Designed from the beginning to be easy to test.
 Karma developed by Angular JS team is popular test runner
 Poor testing initially
 Pretty good testing support now
 As of now, no default debugging tools
 Functions like Console.log(), ko.toJSON() helps debugging process
 Can use following third party solutions
DATA
 How do I get data from the sever?
 Uses JQuery’s $.ajax to power Backbone.
 Very Easy to understand
 Default behaviour is relatively easy to override
 No JQuery
 Can do with Angular’s $http but much better using $resource
 Very good API
 Requires the ngResource module to be installed.
 Uses JQuery’s $.ajax under the covers
 Just “getting data” is relatively easy to do e.g.
 Doing things the “Ember way” is a bit more complex
 Uses JQuery’s $.ajax
 Uses knockout mapping plugin
 Maps JavaScript object into a view model
with the appropriate observables
 How easy to get help?
 COMMUNITY /DOCUMENTATION
 How easy to get help?
 THIRD PARTY INTEGRATION
 How easy to integrate another JS library?
Javascript Frameworks Comparison
Javascript Frameworks Comparison
Javascript Frameworks Comparison
Javascript Frameworks Comparison
Javascript Frameworks Comparison
Javascript Frameworks Comparison
 Hello World
 Dependencies
 Data binding
 Routers
 Views
 Testing
 Data
 Community/Doc
umentation
 Third party
integration
 Development
tools

More Related Content

PPTX
Introduction to JS frameworks
PDF
Choosing the best JavaScript framework/library/toolkit
PDF
On Selecting JavaScript Frameworks (Women Who Code 10/15)
PPTX
Javascript Frameworks Comparison - Angular, Knockout, Ember and Backbone
PPTX
PPTX
Mvvm knockout vs angular
PDF
ITT Flisol 2013
PDF
JavaScript MV* Framework - Making the Right Choice
Introduction to JS frameworks
Choosing the best JavaScript framework/library/toolkit
On Selecting JavaScript Frameworks (Women Who Code 10/15)
Javascript Frameworks Comparison - Angular, Knockout, Ember and Backbone
Mvvm knockout vs angular
ITT Flisol 2013
JavaScript MV* Framework - Making the Right Choice

What's hot (20)

PPT
Fast Slim Correct: The History and Evolution of JavaScript.
PPTX
PHP Indonesia - Nodejs Web Development
PDF
Angular 2 vs React
PDF
Afrimadoni the power of docker
PDF
Modern javascript
PDF
Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - Angular Summit 2015
PDF
The MEAN Stack
PDF
Here Be Dragons - Debugging WordPress
PPTX
CQ5 Development Setup, Maven Build and Deployment
PDF
Testing Mobile JavaScript
PDF
The Onion
PPTX
jQuery Conference 2012 keynote
PDF
Mean Stack - An Overview
PPTX
Bundling your front-end with Webpack
PDF
Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - Devoxx 2015
PDF
Testing Angular 2 Applications - Rich Web 2016
PDF
React server side rendering performance
PPTX
Untangling spring week10
PDF
jQuery Chicago 2014 - Next-generation JavaScript Testing
PPTX
MEAN Stack
Fast Slim Correct: The History and Evolution of JavaScript.
PHP Indonesia - Nodejs Web Development
Angular 2 vs React
Afrimadoni the power of docker
Modern javascript
Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - Angular Summit 2015
The MEAN Stack
Here Be Dragons - Debugging WordPress
CQ5 Development Setup, Maven Build and Deployment
Testing Mobile JavaScript
The Onion
jQuery Conference 2012 keynote
Mean Stack - An Overview
Bundling your front-end with Webpack
Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - Devoxx 2015
Testing Angular 2 Applications - Rich Web 2016
React server side rendering performance
Untangling spring week10
jQuery Chicago 2014 - Next-generation JavaScript Testing
MEAN Stack
Ad

Viewers also liked (14)

PPTX
Compare Javascript libraries in Front End Stack
PPTX
Java script framework-roller-coaster
PPT
Javascript Frameworks
PPTX
Introduction to Underscore.js
PDF
MVC Revivial on the Web
PDF
JS Framework Comparison - An infographic
PPTX
Latest Javascript MVC & Front End Frameworks 2017
PDF
Let’s talk about JavaScript - WebElement
PDF
Building Universal Web Apps with React ForwardJS 2017
PPTX
Why angular js Framework
PDF
Marionette: the Backbone framework
PDF
Comparing JVM Web Frameworks - February 2014
PDF
5 java script frameworks to watch in 2017
PDF
Comparing Hot JavaScript Frameworks: AngularJS, Ember.js and React.js - Sprin...
Compare Javascript libraries in Front End Stack
Java script framework-roller-coaster
Javascript Frameworks
Introduction to Underscore.js
MVC Revivial on the Web
JS Framework Comparison - An infographic
Latest Javascript MVC & Front End Frameworks 2017
Let’s talk about JavaScript - WebElement
Building Universal Web Apps with React ForwardJS 2017
Why angular js Framework
Marionette: the Backbone framework
Comparing JVM Web Frameworks - February 2014
5 java script frameworks to watch in 2017
Comparing Hot JavaScript Frameworks: AngularJS, Ember.js and React.js - Sprin...
Ad

Similar to Javascript Frameworks Comparison (20)

PPTX
JS Frameworks - Angular Vs Backbone
PDF
Ionic framework one day training
PDF
Experiences using CouchDB inside Microsoft's Azure team
PDF
Zepto and the rise of the JavaScript Micro-Frameworks
PPTX
Mix Tech Ed Update No Video
ODP
eXo Platform SEA - Play Framework Introduction
PDF
Fewd week4 slides
PPTX
Starting with jQuery
ODP
SilverStripe Meetup Presentation 03/03/2011
ODP
SilverStripe Meetup 03/03/2011
PDF
Cannibalising The Google App Engine
PPTX
Adopt openjdk and how it impacts you in 2020
PPT
Developing Java Web Applications
PDF
Writing native Linux desktop apps with JavaScript
PPTX
Organized web app development using backbone.js
PPTX
Drupal Frontend Performance and Scalability
PPT
Joomla Day Austin Part 4
PDF
Plugin-based software design with Ruby and RubyGems
PPT
GWT is Smarter Than You
PPTX
Advanced JavaScript
JS Frameworks - Angular Vs Backbone
Ionic framework one day training
Experiences using CouchDB inside Microsoft's Azure team
Zepto and the rise of the JavaScript Micro-Frameworks
Mix Tech Ed Update No Video
eXo Platform SEA - Play Framework Introduction
Fewd week4 slides
Starting with jQuery
SilverStripe Meetup Presentation 03/03/2011
SilverStripe Meetup 03/03/2011
Cannibalising The Google App Engine
Adopt openjdk and how it impacts you in 2020
Developing Java Web Applications
Writing native Linux desktop apps with JavaScript
Organized web app development using backbone.js
Drupal Frontend Performance and Scalability
Joomla Day Austin Part 4
Plugin-based software design with Ruby and RubyGems
GWT is Smarter Than You
Advanced JavaScript

More from Deepu S Nath (20)

PPTX
Design Thinking, Critical Thinking & Innovation Design
PDF
GTECH ATFG µLearn Framework Intro
PPTX
Future of learning - Technology Disruption
PDF
Decentralized Applications using Ethereum
PDF
How machines can take decisions
PDF
Artificial Intelligence: An Introduction
PPTX
FAYA PORT 80 Introduction
PDF
How machines can take decisions
PDF
Simplified Introduction to AI
PPTX
Mining Opportunities of Block Chain and BitCoin
PPTX
Introduction to DevOps
PPT
Coffee@DBG - TechBites March 2016
PPTX
REACT.JS : Rethinking UI Development Using JavaScript
PPT
SEO For Developers
PDF
Life Cycle of an App - From Idea to Monetization
PPT
Uncommon Python - What is special in Python
PPT
Coffee@DBG - TechBites Sept 2015
PPT
Techbites July 2015
PPT
Apple Watch - Start Your Developer Engine
PPTX
Greetings & Response - English Communication Training
Design Thinking, Critical Thinking & Innovation Design
GTECH ATFG µLearn Framework Intro
Future of learning - Technology Disruption
Decentralized Applications using Ethereum
How machines can take decisions
Artificial Intelligence: An Introduction
FAYA PORT 80 Introduction
How machines can take decisions
Simplified Introduction to AI
Mining Opportunities of Block Chain and BitCoin
Introduction to DevOps
Coffee@DBG - TechBites March 2016
REACT.JS : Rethinking UI Development Using JavaScript
SEO For Developers
Life Cycle of an App - From Idea to Monetization
Uncommon Python - What is special in Python
Coffee@DBG - TechBites Sept 2015
Techbites July 2015
Apple Watch - Start Your Developer Engine
Greetings & Response - English Communication Training

Recently uploaded (20)

PDF
NewMind AI Weekly Chronicles - August'25-Week II
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Approach and Philosophy of On baking technology
PPTX
Tartificialntelligence_presentation.pptx
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
Encapsulation theory and applications.pdf
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
Unlocking AI with Model Context Protocol (MCP)
PPTX
1. Introduction to Computer Programming.pptx
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Electronic commerce courselecture one. Pdf
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
cuic standard and advanced reporting.pdf
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
NewMind AI Weekly Chronicles - August'25-Week II
Reach Out and Touch Someone: Haptics and Empathic Computing
Advanced methodologies resolving dimensionality complications for autism neur...
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Mobile App Security Testing_ A Comprehensive Guide.pdf
Approach and Philosophy of On baking technology
Tartificialntelligence_presentation.pptx
Per capita expenditure prediction using model stacking based on satellite ima...
Programs and apps: productivity, graphics, security and other tools
MIND Revenue Release Quarter 2 2025 Press Release
Encapsulation theory and applications.pdf
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Unlocking AI with Model Context Protocol (MCP)
1. Introduction to Computer Programming.pptx
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Electronic commerce courselecture one. Pdf
“AI and Expert System Decision Support & Business Intelligence Systems”
cuic standard and advanced reporting.pdf
Diabetes mellitus diagnosis method based random forest with bat algorithm
Dropbox Q2 2025 Financial Results & Investor Presentation

Javascript Frameworks Comparison