Javascript que fornece componentes para melhorar a estrutura de aplicações web • É um framework de Modelo-Visão-Controlador (MVC) para JavaScript voltado ao cliente.
suporte history via Backbone.Router; manipulação DOM com Backbone.View incluem jQuery, e json2.js de apoio mais Internet Explorer (versões mais antigas).
• contém os dados interativos, bem como uma grande parte da lógica que o rodeia: as conversões, validações, propriedades computadas e controle de acesso. • O modelo em si precisa compreender como lidar com os dados que recebe e como buscar a si mesmo a partir do repositório de dados.
dados e elementos visuais aos usuários da aplicação; • A primeira coisa a se destacar sobre a classe Backbone.View é que ela é responsável pela apresentação de um Model, contendo a lógica de renderização deste Model.
o MVC, e segundo a documentação oficial, os componentes podem sim estar ligados ao padrão MVC aplicado, por exemplo, no Ruby on Rails. Exemplo 2 Criando e instanciando uma view.
• Coleções fornecem recursos de estado a seus modelos, intermediando leituras e escritas de dados para o servidor backend e a partir dele, notifica quaisquer ouvintes quando os modelos são lidos ou modificados. • Responsáveis por armazenar, recuperar e atualizar família de modelos.
fornecidas pela biblioteca Underscore.js. http://underscorejs.org/ chain every filter find first forEach groupBy include indexOf initial invoke isEmpty last lastIndexOf map max min reduce reduceRight reject rest size some sortBy sortedIndex shuffle toArray without
rotas no lado cliente, e conecta cada rota a ações e eventos definidos via Javascript. • para customizar a Backbone.Router basta utilizar o método extend()
é possível definir rotas que receberão parâmetros dinâmicos através da URL. • :parametro – Essa notação definirá que existirá somente este parâmetro definido. OBS.: Os parâmetros são definidos sempre após o “/”.
de histórico do navegador web e suporta navegação regressiva e progressiva. • Backbone.Router utilizará por padrão a History API, e no caso do browser não suportar esta API, a própria classe irá modificar a forma de tratar as URLs, para que use então o formato de hashes.