Brad Green, Shyam Seshadri: AngularJS

Kniha je pro začátečníky a mírně pokročilé v AngularJS. Předpokládá se znalost JavaScriptu a HTML. Pokročilá témata jsou probrána jen lehce nebo v ní vůbec nejsou.
O’Reilly vydalo knihu pocházejícího z pera autorů blízkých přímo AngularJS týmu. Shyam Seshadri vystudoval v Texasu a pracuje v Kalifornii. Brad Green je engeneering director v Google. Je manažerem týmu AngularJS.
Obsah
Kniha je rozdělena do osmi kapitol, od úplných začátků až k poslední kapitole, kde se už řeší praktické problémy. Všechny příklady z knihy jsou dostupné na githubu.
- Introduction to AngularJS
- Anatomy of an AngularJS Application
- Developing in AngularJS
- Analyzing an AngularJS App
- Communicating with Servers
- Directives
- Other Concerns
- Cheatsheet and Recipes
Introduction to AngularJS
V první části se autoři věnují základním konceptům AngularJS a vše ilustrují na příkladu nákupního košíku. Proberete šablony, návrhový vzor model view controller (MVC), data binding (propojení dat mezi modelem a šablonami), dependency injection a directivy (komponenty).
Anatomy of an AngularJS Application
V této kapitole se soustředíme na vlastní aplikaci, jak ji dostat do HTML, jak nahrát potřebný JavaScript. Podrobně se probírají hlavně šablony a data binding. Následují expressions, výklad controllerů, práce s $scope a $watch(). Proberete jak rozdělit aplikaci do modulů a jak pomocí $location řídit routing v celé aplikaci. Základní komunikaci se serverem pomocí $http.
Developing in AngularJS
Tato kapitola je zaměřena na organizaci projektu, podporu IDE, práce s Yeoman a testování pomocí nástroje Karma. Probere se i debugging pomocí Batarang nástroje do Chrome a vylepšení workflow pomocí Yeoman. Také je tu popsáno, jak na propojení s RequireJS.
Analyzing an AngularJS App
V této aplikaci máte hotovou komplexní aplikaci na vytváření receptů a je popsán celý její vývoj od A-Z včetně testování.
Communicating with Servers
Popis komunikace pomocí $http a ng-resource, je tu popsána práce s promise (knihovna $q). Lehce se dotknou i response interception a bezpečnosti webových aplikací.
Directives
Directivy jsou hlavní důvod, proč práce v Angularu je tak skvělá, pokud máte udělanou dobrou komponentu, tak se dá dobře použít dokola a ulehčí to spoustu práce.
V kapitole je popis celého API a podrobně se proberou jednotlivé aspekty tvorby directiv.
Other Concerns
Co se nevešlo jinam, vložili autoři do této kapitoly. Najdete tu komunikaci mezi scopy, práci s cookies, i18n, práci s $location a pár dalších věcí. Trochu mi tu chybí podrobněji zpracované $provides.
Cheatsheet and Recipes
Tato kapitola je plná praktických příkladů, které se na začátku hodí. Najdete tu, jak přidat do aplikace jQuery Datapicker, práce s Socket.IO, nahrávání souborů, stránkování, filtrování výsledků a jednoduché hledání.
Závěr
Celá kniha je velmi dobře pojata. Nechybí všechny důležité koncepty a zároveň je celá kniha od lehkého příkladu až ke komplexnějšímu, ale bez přílišného zjednodušování. Některých problematik se dotýká jen okrajově a pokud problematice neporozumíte, zkuste si projít další studijní materiály.
Kniha pokrývá AngularJS 1.0, ale brzo se blíží vydání verze 1.2, kde budou tyto novinky:
- ng-if (převzato z projektu AngularUI)
- ng-resource s promise
- ng-animate (animace pomocí CSS)
- ng-repeat (track by, multi-element repeater)
- nové expressions (===,!==, ?)
- ngTouch
- vylepšené interceptors a bezpečnost (CSP)
- a doufám ještě pár dalších věcí
Část toho je již teď dostupná v unstable verzi 1.1.x
Autor: Brad Green, Shyam Seshadri
Název: AngularJS
Nakladatelství: O’Reilly Media
Datum vydání: duben 2013
ISBN : 978-1-4493-4485-6
Kniha se prodává v papírové i elektronické podobě
Dobrý den, uvažuji, že si knihu pořídím ale na webu jsou na ni celkem rozporu plné názory. Komu byste knihu doporučil?
Jak se pise v perexu, vidim to hlavne pro zacatecniky, kteri chteji relativne rychle zacit.
Nevíte někdo něco o
http://www.packtpub.com/angularjs-web-application-development/book
mám dojem, že O’Reilly ma 200 stran, kdežto tato má (mít) 400
Kniha jeste neni dokoncena, pokusim se ji precist az ji celou budou mit. Tam by bylo zajimave pokud by pokryli i verzi 1.2.
Pozri https://github.com/angular-app