Při komerčním vývoji na zakázku je velice málo času na experimentování, protože čas jsou peníze a klient s dokončením projektu obvykle spěchá. Komerční vývojáři digitálních agentur se proto zřídkakdy pouští do vyzkoušení zcela neprobádaných technologií. Já jsem se k takovému kroku nedávno odvážil a byl jsem nadšen jako už dlouho ne. Pravda, v prvním týdnu mé kouty postoupily o hezkých pár centimetrů směrem k severnímu pólu mé hlavy, nicméně pak jsem se vše potřebné naučil a zjistil, jak úžasným pomocníkem může AngularJS být.
AngularJS, jak již jeho název napovídá, je JavaScriptový Framework. Většina z vás jistě zná jQuery a mnozí ho i používají. Angular se ho nesnaží nahradit, naopak ho částečně využívá. Srovnání s konkurenty Angularu, mezi něž patří například Backbone nebo Node.js, vám nabídnu ve svém příštím článku. Pojďme se nejprve podívat na to, jaké výhody může Angular vývojářům přinést.
Nejvíce jsem si na Angularu zamiloval možnost rozdělení aplikace na tři části – MVC. Mohu mít řídící část, modelovou a část, která mi bude všechno vykreslovat. Jak přehledné! V AngularJS může navíc programátor vytvořit spoustu věcí ohromně jednoduše. Otázka za dva bludišťáky: Na kolik řádků je v Angularu zpracování formuláře? Na jeden! Prostě skvělé… Člověk se nemusí obtěžovat zbytečnostmi. Právě to byl důvod, proč vzal Angular v roce 2009 pod svá křídla gigant Google.
Další skvělou featurinkou je tzv. Two-way-binding, jehož využití si vysvětlíme na jednoduchém příkladu: představte si šablonu a v ní input například: “cislo”. Dále odstavci nabindujeme, že má obsahovat to, co je v proměnné “vysledek”. A v logice máme, že “vysledek” je 2x “cislo”. Jednoduché, že? A když do inputu čísla zadáme dvojku, tak se nám v odstavci hned ukáže čtyřka. Dvojku změníme na jednadvacet a bum!, v odstavci je rázem 42 a my se tak konečně dozvíme odpověď na základní otázku života. A také zjistíme, že elementární operace jsou díky dvoucestnému přiřazení návykově příjemné. Nemusíme sami metodami “onChange” odchytávat, co se kde změnilo, přes selektory brát hodnoty a přes další selektory to někam cpát. O to už se Angular postaral, my se můžeme věnovat důležitějším věcem, jako je logika nebo hraní si s propiskou.
Tak jako má každá růže své trní, i AngularJS má své stinné stránky. Není úplně jednoduché se ho naučit, když o něm nic nevíte, zvláště pak když s ním napoprvé děláte hybridní mobilní aplikaci. V Angularu lze vše udělat mnoha způsoby. A co člověk, to způsob. Takže co tutorial, to způsob. A dokud se neprobádáte trochu hlouběji a nebudete znát souvislosti, půjde vám učení z různých příkladů velice obtížně.
AngularJS je bezpochyby skvělý pomocník, který dokáže programátorovu práci natolik urychlit, že se vyplatí na něj s dalším projektem přejít. Když překonáte prvotní trable s učením práce v Angularu (kurzy aby člověk pohledal, jediným zdrojem jsou příklady na internetu), získáte nástroj, se kterým si užijete každý řádek kódu skoro stejně jako půllitr vychlazeného piva.