Snažil jsem se pochopit užitečnost backbone.js z jeho webu http://documentcloud.github.com/backbone, ale stále jsem toho moc nenašel.
Může mi někdo pomoci vysvětlením, jak to funguje a jak by to mohlo být užitečné při psaní lepšího JavaScriptu?
Odpověď
Backbone.js je v podstatě uber-light framework, který vám umožňuje strukturovat váš kód Javascript v MVC (Model, View, Controller) způsob, kde…
Model je součástí vašeho kódu, který načítá a naplňuje data,
Zobrazit je HTML reprezentace tohoto modelu (pohledy se mění se změnou modelů atd.)
a volitelný Ovladač která v tomto případě umožňuje uložit stav vaší Javascriptové aplikace prostřednictvím hashbang URL, například:http://twitter.com/#search?q=backbone.js
Některé výhody, které jsem objevil s Backbone:
-
Už žádné Javascript Spaghetti:kód je organizován a rozdělen do sémanticky smysluplných souborů .js, které jsou později kombinovány pomocí JAMMIT
-
Už žádné
jQuery.data(bla, bla)
:není potřeba ukládat data do DOM, místo toho ukládat data do modelů -
vazba události prostě funguje
-
mimořádně užitečná knihovna nástrojů Podtržení
-
backbone.js kód je dobře zdokumentován a skvěle se čte. Otevřel mi oči k řadě technik kódu JS.
Nevýhody:
- Chvíli mi trvalo, než jsem si to spletl a přišel na to, jak to aplikovat na svůj kód, ale jsem v JavaScriptu nováček.
Zde je sada skvělých návodů na použití Backbone s Rails jako back-end:
CloudEdit:Výukový program Backbone.js s Rails:
http://www.jamesyu.org/2011/01/27/cloudedit-a-backbone-js-tutorial-by-example/
http://www.jamesyu.org/2011/02/09/backbone.js-tutorial-with-rails-part-2/
p.s. Existuje také tato nádherná kolekce třída, která vám umožní pracovat se sbírkami modelů a napodobovat vnořené modely, ale nechci vás hned od začátku mást.