Book Review: Angular Up & Running

Angular Up & Running, Learning Angular, Step by Step

Author: Shyam Seshadri
Copyright 2018 O’Reilly Media, Inc.

AngularUpAndRunningCover.jpg

[Disclosure: I read this book on my own and am not being paid to write this review. The opinions are my own.  I am going to include an Amazon affiliate link to the book which could lead to my being paid a small amount if people purchase the book through the link.]

Angular Up & Running on Amazon [affiliate link]

Overview

The book Angular Up & Running, does as advertised. After starting with an introduction to what Angular is, it dives right into using the Angular CLI to build a functional single page application.  The book is logically organized to gradually build up both the example application and the additional exercise described at the end of each chapter.

I was coming at the book from a place where I had already done the Angular Tour of Heroes tutorial and was developing my own application.  The book was still useful to me by filling in the blanks in my understanding and also exposing me to capabilities that Angular has that I wasn’t aware of yet.  This book would also be useful to someone with no Angular experience, because it really does start at the beginning with the installation of Node and the Angular CLI.  At each step, Seshadri gives the necessary CLI commands and explains the options being used.

Pros

Targeted to someone with no prior Angular experience: The reader is expected to be a programmer, but otherwise this book doesn’t assume any prior understanding of Angular.  It is more detailed and involved than the Tour of Heroes tutorial and takes the time to establish the vocabulary used and how everything ties together.

Useful to someone using, but still new to Angular: As I mentioned before, I am already in the midst of developing my first Angular application, but I found this book really added to my understanding of Angular.  A common trap of the quick start tutorial is that you can get developing with a technology without having an in depth understanding of it.  You can learn just enough to be dangerous.  This book really helped to bridge the gaps in my understanding.

Covers testing of components and services: There are two separate chapters on Testing.  Chapter 5 covers testing the components and also the basic set up for testing and Chapter 10 covers testing services.  Angular has some nice built-in testing capability, so it was good to have a couple of chapters demonstrating their use.

Covers going to production and related considerations: One of my biggest gripes with technical books is that they get you going with an example and then give these vague disclosures like “but of course you wouldn’t actually do this in a production application”  without actually giving any information about what is appropriate for production. Since almost anyone programming is ultimately going to need to go to production, I find this wildly frustrating. This book has an entire chapter dedicated to getting your application ready for production.  It covered how to set up different environments, how to build the code so that it’s smaller and faster and something called Angular Universal.  It did warn that Angular Universal is still new and hard to set up. Also useful to know.  This chapter felt like one of this book’s biggest strengths.

Cons

Examples in the testing chapters were disappointing: The chapters on testing had examples and they even covered how to mock HTTP calls, but the chapter 5 examples in particular just felt lacking.  At that point in the book, the example application was pretty basic and the tests just didn’t really give a picture of how you might test a component that has interconnected parts and validation, etc.

Could have used more discussion of Observables, Subjects and the Component life cycle: This is a pretty minor complaint, because the book did cover these things.  However, the use of Observables and an understanding of the component life cycle is pretty key to getting an application to behave the way you want and it would have been useful to bring up the life cycle again when Observables were introduced.

Do I recommend this book?

Yes, I recommend this book for anyone wanting to learn Angular or anyone in the beginning stages of learning Angular development.  As the title indicates, it’s not going to be very useful for someone with a lot of Angular experience.  It would also probably annoy someone who doesn’t like the code generation aspect that the Angular CLI brings in.  Overall, this book was well written, detailed and covered practical aspects of writing an Angular application.

Further Reading