AngularJS

Author: Brad Green & Shyam Seshadri
Publisher: O'Reilly
Pages: 196
ISBN: 978-1449344856
Audience: JavaScript programmers
Rating: 3.5
Reviewer: Ian Elliot

AngularJS is a hot topic and rapidly becoming the must-use client side MVC library, but the documentation is terrible. So a book on the topic written by two Google programmers working on the project sounds like a great idea.

And it very nearly is. This is a good book spoiled by lots of silly mistakes. However, if your threshold for mistakes is low then it is still worth considering as a way of getting started with and even getting inside AngularJS. The best part of the book is probably the beginning in that it manages to talk you into AngularJS by explaining the why and then the how. Later on the book has a tendency to degenerate into longer listings, slightly off topic subjects and incomplete explanations which when coupled with the typos makes it much more difficult to extract any goodness.  

There is an errata list and there are corrected examples that you can download but it doesn't make the book an easy read.

Chapter 1 forms a very general introduction to AngularJS. It explains the basic idea of MVC with just enough detail for you to see how it relates to AngularJS. It explains databinding, dependency injection and directives which are key features. Notice that this is a very conversational approach. If you prefer a more definition based approach as you might find in a manual re-write this isn't going to please you. It leaves out a lot of detail - mostly obvious or irrelevant detail - and you are going to have to find out about it from the reference documenation. 

Banner

The next chapter continues in the  same way explaining things in a little more depth with a look at controllers, two way databinding, lists, CSS, expressions, scopes, $watch, modules, routes, directives and validating user input. A long chapter? Yes and it more or less completes what the book has to say about using AngularJS. From here the book is mostly about the bigger picture of working with AngularJS.

Chapter 3 is about using various tools to control an AngularJS project i.e. a fairly big project. If you are learning AngularJS then your first concern will be with small projects so perhaps this is a bit premature. The tools discussed include the excellent JetBrains Webstorm IDE, but not my favourite NetBeans. It also covers Yeoman, Karma and Batarag. It makes you wonder if open source projects are in some sort of competition to use the silliest name possible. How useful you find this chapter will depend on what size of project you are considering. Chapter 4 continues with a consideration of testing and overall architecture. 

Chapter 5 moves back to consider something more basic - communicating with servers. It considers mostly the HTTP and strict REST implementations. Chapter 6 is about the Directives API and creating your own. Chapter 7 is about general stuff, location, cookies and so on; and the final chapter is a set of recipies and tips. 

angularjs

 

The first two chapters are where the value of this book to the AngularJS beginner are. If you can follow the discussion without worrying about the typos then it will get you to understand why AngularJS is a good idea and what its basic operating principles are. You will have to spot the problems in the programs, however - but most of them are fairly obvious. It goes without saying that this book is only suitable for readers who are fairly good at JavaScript. It's a book for beginners in AngularJS rather than for beginners in JavaScript.

If you are already familiar with AngularJS then you might find the later chapters useful, but only if you find the tools described are what you want to use. Even if they ar,e be prepared to work hard at some of the sections which are not as clear as the first two chapters.

So is the book recommended?

Put simply there are too many problems with it to be able to recommend it unconditionally. There is also the problem that most of the goodness is in the first two chapters which, at 46 pages, don't even make up a third of the book. So if you are desperately seeking an introduction of AngularJS then buy a copy, but you have been warned. 

Banner


Functional Design (Addison-Wesley)

Author: Robert C. Martin
Publisher: Addison-Wesley
Date: September 2023
Pages: 384
ISBN: 978-0138176396
Print: 0138176396
Kindle: B0CGHQKGYG
Audience: General
Rating: 4.5
Reviewer: Kay Ewbank

This book sets out to explain the principles, patterns and practices of functional design, and why functional prog [ ... ]



Clean Craftsmanship

Author: Robert C. Martin
Publisher: Addison-Wesley
Date: November 2021
Pages: 416
ISBN: 978-0136915713
Print: 013691571X
Kindle:B095C16LSW
Audience: General
Rating: 4
Reviewer: Mike James
Well, I'm a clean craftsman - are you?


More Reviews

 

 

Last Updated ( Thursday, 14 November 2013 )