Node.js, MongoDB and Angular Web Development

Author: Brad Dayley, Brendan Dayley and Caleb Dayley
Publisher: Addison-Wesley
Pages: 640
ISBN: 978-0134655536
Print: 0134655532
Kindle: B076DDF6JS
Audience: Web developers
Rating: 3.8
Reviewer: Kay Ewbank

This is a book that gives a useful overview of the MEAN stack MongoDB, Express.js, Angular and Node.js.), but can't go into enough detail given the amount of space for three large topics. 

One difficulty is that the different elements covered by the book differ in how complex they are to get to grips with, and how much you need to know about them to build a successful web application.

If you think about it, you can pretty much get away with knowing how to make a successful connection to a MongoDB database, and maybe how to create a reasonable query. if you're lucky, someone else will have set the database up and will make sure it keeps working. That's not the case with Node.js and Angular, where you need to know a lot more to make sure your web application works.

Having introduced the Node.js to Angular stack, and given a brief primer on JavaScript, the book starts with a section on learning node.js. This has a chapter on events, listeners, timers and callbacks, followed by handling data I/O. There are chapters on  accessing the file system and implementing HTTP services and socket services. There's a chapter on using multiple processors to scale applications, and the section ends with a chapter on using additional node.js modules.

 

Banner

MongoDB is the next major area to be covered. Chapters in this section begin by looking at MongoDB and NoSQL in general, then cover getting started with MongoDB, and adding in Node.js before moving on to manipulating MongoDB documents from Node.js, and accessing MongoDB from Node.js. There's a chapter on using Mongoose for structured schema and validation, and the section ends with a chapter on advanced MongoDB concepts that looks at replication and sharding.

Two chapters on the Express module and how to use it to work more easily with the Node.js http module are slotted in next.

The final half of the book covers Angular, beginning with its relationship to TypeScript from version 2, and getting started with Angular. This second edition of the book has been updated for Angular 2. There are chapters on Angular components, expressions and data binding and the first Angular section ends with a chapter on built-in directives. I'm not sure this part of the book goes into enough detail; for example, dependency injection is introduced in three four-line paragraphs, after which you're told 'you've learned what dependency injection is and hnow to use it for components and directives'. You'll probably be OK if you're confident enough with JavaScript, but I can imagine less experienced developers feeling a bit lost.

A further five chapters then cover advanced Angular. There are chapters on custom directives, and events and change detection looking at topics such as custom events and observables. A chapter on implementing Angular services in web applications looks at the http service and the router service. There's a chapter on creating your own custom Angular services, and the book ends with a chapter on having fun with Angular, looking at the animation service, working with images, and enabling drag and drop.

The main problem with this book is that each of the topics is worthy of a full length book in its own right, so you're only really going to get an overview of what Node.js, MongoDB and Angular are capable of and how to get the best out of them. That said, I thought that overall this was a useful guide to how to put the different elements of the MEAN stack together. I wouldn't recommend it unless you're already a competent programmer, and you may well need to read other books on the different components (particularly Angular) to become really confident, but it shows how to use the stack.

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on, Twitter, Facebook or Linkedin.

Banner


Web Development with Clojure

Author: Dmitri Sotnikov 
Publisher: Pragmatic Bookshelf
Pages:308 
ISBN: 978-1680500820
Print:1680500821
Kindle: B01KU8O24G
Audience: Clojure Programmers
Rating: 4
Reviewer: Mike James 

Clojure and websites aren't natural partners. Can this book convince otherwise?



Java By Comparison

Author: Dr. Simon Harrer, Dr. Jörg Lenhard and Linus Dietz
Publisher: Pragmatic Bookshelf
Pages: 208
ISBN: 978-1680502879
Print: 1680502875
Kindle: B07CLFTVZS
Audience: Java programmers at just the right level
Rating: 4
Reviewer: Alex Armstrong

Learn Java by comparing the good against the bad - [ ... ]


More Reviews