Backbone.js
Backbone.js
| |
---|---|
![]() | |
Basisdaten
| |
Entwickler | Jeremy Ashkenas |
Erscheinungsjahr | 13. Oktober 2010[1] |
Aktuelle Version | 1.1.2[1] (20. Februar 2014) |
Betriebssystem | plattformunabhängig |
Programmiersprache | JavaScript |
Kategorie | JavaScript-Bibliothek |
Lizenz | MIT-Lizenz (Freie Software) |
deutschsprachig | nein |
backbonejs.org |
Backbone.js ist eine JavaScript-Bibliothek mit RESTful-JSON-Schnittstelle. Backbone basiert auf dem Model-View-Controller-Muster (MVC). Backbone ist für seine geringe Größe bekannt und nur von der JavaScript-Bibliothek [2] Underscore.js abhängig. Backbone wird zur Programmierung von Single-page-Webanwendungen und zur Synchronität von Webanwendungen (z. B. verschiedene Clients und Server) verwendet. Backbone wurde von Jeremy Ashkenas geschaffen, der ebenso für CoffeeScript verantwortlich ist.
Architekturvorgaben

Eine Backbone-Anwendung besteht aus den Elementen Model, Collection, View und Router. Das Interaktionsmuster von Backbone kann dem MVC-Muster zugeordnet werden. Model und View werden gemäß dem MVC-Muster umgesetzt. Allerdings fehlen konkrete Controller-Instanzen bei der Umsetzung. Dies hat folgende Gründe:
- Der Router übernimmt die Aufgaben eines „Front Controllers“. Ein solcher Controller dient als Ereignissenke und Einstiegspunkt für alle eingehenden Anfragen an eine Webseite. Der Front Controller adressiert bei Backbone unmittelbar die jeweils verantwortliche View.
- Die View einer Backbone-SPA übernimmt neben der Darstellung ebenfalls die Aufgabe der Ereignisbehandlung. Bei einem traditionellen MVC-Muster werden alle Aktionen im Rahmen der View zum jeweils verantwortlichen Controller weitergeleitet. Auf diese View/Controller-Separation wird bei Backbone-Anwendungen verzichtet. Der klassische Grund für die View/Controller-Separation liegt darin, dass die jeweiligen Verhaltensstrategien über verschiedene Controller ausgetauscht werden können. Ein Beispiel hierfür kann ein editierbares und nicht editierbares Verhalten sein. Durch den Verzicht auf explizite Controller-Instanzen wird der Implementierungsaufwand reduziert.
Vorkommen
Folgende Webanwendungen wurden mit Backbone.js erstellt:[3]
- Airbnb
- BitTorrent.com
- Diaspora
- DocumentCloud
- Foursquare
- Grooveshark
- Groupon Now
- Hulu
- LinkedIn Mobile
- NewsBlur[4]
- Pandora
- Seafile
- Sony Entertainment Network
- SoundCloud
- Trello
- USA Today
- WordPress.com
Siehe auch
- Javascript MVC Frameworks
Literatur
- Addy Osmani: Developing Backbone.js Applications. 1st Auflage. O'Reilly Media, 2013, ISBN 978-1-4493-2825-2, S. 150 (oreilly.com).
Weblinks
Referenzen
- ↑ a b Change Log
- ↑ Alex MacCaw: JavaScript Web Applications. O'Reilly Media, Inc., 2011, ISBN 978-1-4493-0351-8, S. 165 (google.com [abgerufen am 27. April 2012]).
- ↑ Websites made with Backbone.js
- ↑ Backbonification: migrating a large JavaScript project from DOM spaghetti to Backbone.js, Samuel Clay (NewsBlur) 13th November 2012