3 Day(s)


In this course you will learn how to leverage javascript in end to end application development using javascript. Using NodeJS and the MEAN stack you will learn how to build open source modular and component based web applications to build service driven application with a single web page user interface


Students planning to attend this course must have a thorough understanding of JavaScript equal to QAJAVSC. You will benefit greatly from understanding how web based architectures work.

Course Specifics

Course Outline

Understanding the MEAN Stack

  • What is Node JS
  • The open web
  • Git and software development
  • Bower, Grunt, Yeoman and Gulp
  • Understanding applications architecture built using the MEAN stack

JavaScript for Developers

  • Understanding closures and scope
  • Self executing javascript and encapsulation
  • Object orientated javascript
  • Patterns and Factories
  • JSON

Introducing NodeJS

  • Understanding the benefits of NodeJS
  • Installing and exploring NodeJS
  • Working with REPL

Introducing NPM

  • Understanding NPM and packaged components
  • Working with Require and core NodeJS objects
  • Initialising applications and working package.json
  • Building modules

Node Event and Concurrency

  • Understanding callbacks and javascript events
  • Building concurrency and asynchronous behaviour using callbacks
  • Using NodeJS Event Emitters to build custom events
  • Creating and working with promises

Interacting with the File system using NodeJS

  • Working with the fs object
  • Reading and writing files
  • Building and interacting with Data Streams

Building Servers using NodeJS

  • Using Node to build web servers
  • Working with HTML Verbs
  • Creating Routes using RegEx objects
  • Building a RESTFul server

Putting the E in Mean - Introducing Express

  • Using the express module to simplify routing
  • Reading URL parameters
  • Working with express to create promise driven code

Building Servers Using Express

  • Scaffolding applications using the Express Generator
  • Working with the app.js file
  • Creating static routes
  • Building dynamic routes
  • Working with the Jade tempting engine

What is NoSQL?

  • Defining NoSQL
  • Exploring NoSQL solutions
  • Contrasting NoSQL vs. RDBMS

Introducing MongoDB

  • Installing MongoDB
  • Working with Mongod
  • Using the Shell and common command
  • Defining Mongo databases and data documents
  • Querying MongoDB documents
  • Working with users and security

Working with Mongoose

  • Installing the Mongoose module
  • Build code defined data structures with mongoose
  • Developing schemas
  • Communicating from express to the Mongo server
  • Improving RESTful services
  • Querying MongoDB using Mongoose

Introducing AngularJS

  • Installing and working with the AngularJS framework
  • Using Angular with express
  • Creating Angular apps
  • Creating two way databinding
  • Working with controllers
  • Working with directives
  • Building services and routes
  • Using views
  • Consuming RESTful services

Debugging MEAN Stack applications

  • Using Debuggers within Chrome and Node to test services
  • Working with the console
  • Using Node Inspector

Testing MEAN Stack applications

  • Introducing tech driven development
  • Writing tests using Chai and Mocha
  • Building tests into the workflow

Working with Task runners

  • Exploring task runners and generators such as Grunt and Gulp
  • Using Gulp to build an automated task runner and compiler
  • Introducing continuous integration and development
  • Building a CI/CD Gulp task runner

Thinking about Onsite?

If you need training for 3 or more people, you should ask us about onsite training. Putting aside the obvious location benefit, content can be customised to better meet your business objectives and more can be covered than in a public classroom. It's a cost effective option.

Submit an enquiry from any page on this site, and let us know you are interested in the requirements box, or simply mention it when we contact you.

Upcoming Dates

Course Location Days Cost Date
3 1985 £1985 2018-09-17
3 1985 £1985 2018-06-18
3 1985 £1985 2018-03-27
3 1985 £1985 2017-12-20
3 1985 £1985 2017-11-29