Friday, January 3, 2014

Backbone.js overview

Backbone.js is a library of tools that helps to build client side rich web applications.
Providing
- Models with Key-Value binidng
- Custom Events
- Collections with a rich API of enumerable functions
- Views with declarative event handling
- connects it all to your existing API over a RESTful JSON interface

Client-side backbone.js application
- Router(s)
- Views
- Models
- Collections

JSON data

Server
- RESTful endpoint

Pros
- Fast
- Highly interactive

Cons
- Cannot be indexed by search engines (without extra work)
- Difficult to test (as client side application)
- Security Issues

SPA - Single Page Applications
- Improved User Experience
SPA on Client Side
- User interface
- Logic
- Page Generation

SPA challenges
- Lack of tooling and experience
- SEO
- Working with different browsers

Backbone.js
Routers helps simulate Page changes, support page history and bookmarking.

More ToBe typed....

JavaScript Frameworks

JavaScript based UI Frameworks
JavaScript Libraries that help in implementing Architectural Patterns