Despite the knowledge and enthusiasm of the authors, this book is a botched shot.
The first two chapters introduce the framework. There are many errors in the sample code and so many blocks of code lacking instruction on where to put them or how to use them, that most of the examples don’t work without a lot of debugging and trial and error. It’s probably simple if you already know the framework — but people buying the book, presumably, don’t.
The third chapter purports to be about workflow, but really is a description of the authors’ development environment — Linux, Yeoman, WebStorm, etc. There’s plenty on duplicating the environment, but if you don’t want to (or can’t — Yeoman, for instance, doesn’t work on Windows), there’s little explanation of why things go where, how you start, what you think about, etc. A generic workflow description would be very useful but is missing.
The fourth chapter “analyzes” a simple AngularJS application, providing code listings for the files that make up the application along with explanations of what’s going on in the files, but the explanations often refer to elements that aren’t in the code listings, again, there are many code errors, and the sample data — the model of the model/view/controller pattern — is mentioned in passing at the beginning of the chapter without any clues about how to incorporate it into the app. The “finished” application has no data and it’s hard to see how it could ever have worked.
The rest of the book seems to be mostly a rehash of the online documentation.
I like what I know about AngularJS, I’m motivated and have put a lot of time into working through the book’s shortcomings, but have decided after struggling through chapter 4 that it’s just not worth the effort.
Look at the Errata page before you decide to buy, and if you do decide to buy it would probably be wise to get an electronic edition in case O’Reilly issues a version with corrections.
This book represents an opportunity missed, and that’s an awful shame.