Free Sample
+ Collection

Backbone.js Cookbook

Vadim Mirgorod

For JavaScript developers the Backbone.js framework is full of potential. This book, with its accessible recipes, allows you to get to grips with building modern frontend web applications, quickly and easily.
RRP $26.99
RRP $44.99
Print + eBook

Want this title & more?

$12.99 p/month

Subscribe to PacktLib

Enjoy full and instant access to over 2000 books and videos – you’ll find everything you need to stay ahead of the curve and make sure you can always get the job done.

Book Details

ISBN 139781782162728
Paperback282 pages

About This Book

  • Easy-to-follow recipes to build dynamic web applications
  • Learn how to integrate with various frontend and mobile frameworks
  • Synchronize data with a RESTful backend and HTML5 local storage
  • Learn how to optimize and test Backbone applications

Who This Book Is For

This book is great for JavaScript developers who want to learn how to build advanced frontend applications with the Backbone.js framework. This book can be used in educational institutions to teach students how to build frontend applications in an MVC manner.

It's assumed that you have some experience in jQuery, and are familiar with HTML.

Table of Contents

Chapter 1: Understanding Backbone
Designing an application with the MVC pattern
Defining business logic with models and collections
Modeling an application's behavior with views and a router
Creating an application structure from scratch
Writing your first Backbone application
Implementing URL routing in your application
Extending an application with plugins
Contributing to the Backbone project
Chapter 2: Models
Creating a model
Operating with model attributes
Operating with the model identifier
Validating model attributes
Overriding getters and setters
Creating undo points to store/restore a model's state
Implementing workflow for a model
Using advanced validation in a model
Validating an HTML form
Working with nested attributes in a model
Implementing a one-to-one relationship
Chapter 3: Collections
Creating a collection of models
Getting a model from a collection by its index
Getting a model from a collection by its ID
Adding a model to a collection
Removing a model from a collection
Working with a collection as a stack or as a queue
Sorting a collection
Filtering models in a collection
Iterating through a collection
Chaining a collection
Running No SQL queries on a collection
Storing models of various types in the same collection
Implementing a one-to-many relationship
Chapter 4: Views
Rendering a view
Dealing with a view element using jQuery
Rendering a model in a view
Rendering a collection in a view
Splitting a view into subviews
Handling Document Object Model (DOM) events in a view
Switching views using Backbone.Router
Chapter 5: Events and Bindings
Managing events in Backbone.js
Handling events of Backbone objects
Binding a model to a view
Binding a collection to a view
Bidirectional binding with Backbone.stickit
Binding a model and a collection to a select list
Handling keyboard shortcuts in a view
Handling router events
Chapter 6: Templates and UX sugar
Using templates in a view
Implementing a template loader
Using Mustache templates
Defining a form
Adding validation to a form
Handling form events
Customizing a form with the Bootstrap framework
Assembling layouts with LayoutManager
Building a semantic and an easily styleable data grid
How it works...
Drawing on the HTML5 canvas
Chapter 7: REST and Storage
Architecting the REST API for the backend
Prototyping a RESTful backend with MongoLab
Synchronizing models and collections with a RESTful service
Building a RESTful frontend with Backbone
Using the polling technique to fetch data
Working with local storage
Chapter 8: Special Techniques
Using mixins with Backbone objects
Creating a Backbone.js extension with Grunt
Writing tests for a Backbone extension with QUnit
Mocking up a RESTful service with jQuery Mockjax in asynchronous tests
Developing a mobile application with jQuery Mobile
Building an iOS/Android app with PhoneGap
Organizing a project structure with Require.js
Ensuring compatibility with search engines
Avoiding memory leaks in a Backbone application

What You Will Learn

  • Architecting and building dynamic web applications in an MVC style
  • Modeling business logic with Backbone models and collections
  • Rendering data with Backbone views
  • Routing URLs within your application
  • Communicating with a RESTful service
  • Using HTML5 local storage to store models and collections
  • Optimizing and testing Backbone applications
  • Writing your own Backbone extensions
  • Ensuring compatibility with search engines
  • Creating mobile apps with jQueryMobile and PhoneGap

In Detail

There is no doubt that the superior rendering power of HTML5, thin-to-thick client transition and REST style communication created a new era in web development, replacing the outdated approach based on browser plugin technologies. Backbone.js allows developers to write lightweight, modular, and scalable JavaScript applications.

Backbone.js Cookbook contains a series of recipes that provide practical, step-by-step solutions to the problems that may occur during frontend application development using an MVC pattern. You will learn how to build Backbone applications utilizing the power of popular Backbone extensions and integrating your app with different third party libraries. You will also learn how to fulfill the requirements of the most challenging tasks.

The first chapter of the book introduces you to the MVC paradigm and teaches you how to architect rich Internet applications operating with basic concepts of Backbone.js. During the reading of this book you will learn how to solve challenging problems leveraging Backbone objects such as models, collections, views, routers, and so on.

You learn how to use forms, layouts, templating engines, and other Backbone extensions, which will help you to complete specific features of your application. You will understand how to bind a model to a DOM element. You will see how perfectly Backbone.js integrates with third party libraries and frameworks such as jQuery, Zepto, Underscore.js, Require.js, Mustache.js, Twitter Bootstrap, jQueryMobile, PhoneGap and many others. This book will guide you in how to optimize and test your applications, create your own Backbone extensions, and share them with the open source community.

With the help of Backbone.js Cookbook, you will learn everything you need to know to create outstanding rich Internet applications using the JavaScript programming language.


Read More

Recommended for You