Dejte svým aplikacím páteř (.js)

Jak je internet stále chytřejší a JavaScript se začíná hromadit na webových stránkách, musíme se naučit organizovat náš kód. Časy, kdy se naplňoval globální jmenný prostor všemi funkcemi, na které si vzpomeneme, jsou dávno pryč a jejich údržba je příliš náročná. Spolu s mnoha dalšími návrhovými vzory může vzor MVC (model, pohled, ovladač) vnést řád do chaotických špaget vašeho kódu JavaScript. Právě teď je de facto knihovna JavaScript MVC frameworku Backbone.js.

Co je Backbone.js?

Backbone.js vám poskytuje extrémně jednoduché způsoby, jak vytvářet modely a pohledy, které organizují váš kód logickým způsobem, který odděluje kód vytvářející rozhraní, které uživatel vidí a interaguje s (zobrazením), od dat a zpracování těchto dat ( model). Toto oddělení vám umožňuje přepínat modely a/nebo pohledy, aniž byste museli měnit ty druhé. Můžete tedy použít stejný model s jinými pohledy nebo změnit způsob, jakým model ukládá data, aniž byste museli v pohledu provádět jakékoli změny.

Možná jste si všimli, že jsem nezmínil nic o ovladačích. Je to proto, že Backbone.js není skutečný rámec MVC a postrádá řadiče, ale má směrovače pro podobný účel. To opravdu není chyba. Řadič má tendenci být nejužitečnější pro vztahy klient-server, protože řadiče na serveru zachycují požadavky z pohledu na klientském počítači a diktují akce, které by se měly provést, ale když je vše spuštěno v klientovi, pohled může komunikovat. přímo s modelem.

Funkce Backbone.js

Backbone.js automaticky využívá vzor pozorovatele na svých modelech, takže pohledy mohou přímo naslouchat jakýmkoli změnám, ke kterým dojde v modelu (jako je změna hodnoty), a okamžitě aktualizovat pohled, aby tyto změny odrážel. Backbone.js také přichází s vestavěnou podporou pro jQuery a Zepto pro manipulaci s DOM. Dalším kouskem knihovny, která se může hodit, jsou jejich kolekce „s bohatým API s vyčíslitelnými funkcemi“, které obsahují více modelů pro jednodušší údržbu, místo aby se váš pohled musel starat o více modelů samotných. A konečně, Backbone připojí vše k vašemu stávajícímu back-end API prostřednictvím rozhraní RESTful JSON a může se dokonce synchronizovat s back-endy, které nepodporují REST a JSON, i když to chce trochu doladit.

Pohled do budoucna

Na mnoha místech jsem viděl výukové programy, které předvádějí schopnosti Backbone.js a učí uživatele, jak využít sílu této úžasné knihovny. Mám pocit, že nemohu udělat nic menšího, než předat stejný typ znalostí vám – mým čtenářům – a tak jsem spustil sérii videí. Prvních 5 videí vás seznámí s jednotlivými moduly Backbone.js a poté krok za krokem projdu tvorbou jednoduché webové aplikace s Backbone.js. Níže budu aktualizovat seznam vydaných výukových programů.

Seriál výukových videí Backbone.js

  • Backbone.js Část 1:Modely
  • Backbone.js, část 2:Zobrazení
  • Backbone.js, část 3:Směrovače
  • Backbone.js, část 4:Kolekce
  • Backbone.js, část 5:AJAX
  • Páteřní průvodce aplikací, část 1:HTML a modely
  • Průvodce základní aplikací, část 2:Zobrazení a šablony
  • Návod na základní aplikaci, část 3:Nové zobrazení a externí šablony
  • Návod na základní aplikaci, část 4:Žije!
  • Návod na základní aplikaci, část 5:RequireJS

V tuto chvíli si opravdu nejsem jistý, co vytvořím pro finální tutoriál aplikace, takže pokud má někdo nějaké skvělé nápady, pište je do komentářů. Raději bych použil navrhovanou myšlenku (pokud je uvedena) spíše než něco, co si vymyslím, protože tento blog je celý o vás, a tak vás chci naučit to, co se chcete a potřebujete naučit. Nezapomeňte také sdílet tento článek se svými přáteli z programování v JavaScriptu, abych mohl získat spoustu nápadů. Šťastné kódování!