Providing Technology Training and Mentoring For Modern Technology Adoption
Web Age Aniversary Logo
US Inquiries / 1.877.517.6540
Canadian Inquiries / 1.877.812.8887
Course #:WA2588

Advanced Angular 2 Programming Training

Our Advanced Angular 2 course covers advanced topics of this next generation of the Angular framework. This course is intended for those that already have a basic understanding of the Angular 2 fundamentals and now want to cover more advanced features the Angular 2 framework offers.

This course includes advanced topics not covered in our 3-day Introduction to Angular 2 Programming class. This includes specifics about how to consume REST web services and WebSocket data from Angular 2 applications. Advanced use of the Angular Routing module and Angular Animations are covered. You will learn how to develop Angular 2 applications using Angular CLI. Details of how to test and debug Angular 2 applications are covered in addition to best practices for the style and organization of Angular 2 projects.

Lab exercises provide essential and practical hands-on experience for each topic.

In this Advanced Angular 2 course, attendees will learn how to:

  • Consume data from REST web services
  • Consume WebSocket data
  • Advanced Router Usage
  • Angular Animations
  • Testing and debugging Angular applications
  • AngularCLI
  • Best practices for Angular application style and organization

Our Advanced Angular 2 course continues to be in high demand. The topics covered in the course are

  • Consuming REST Web Services in Angular
  • Consuming Web Sockets Data in Angular
  • Advanced Routing
  • Angular Animations
  • Testing Angular Components and Services
  • Developing Using AngularCLI
  • Debugging
  • Angular Style Guide

The labs covered in the course are:

  • Angular Communication with REST Services
  • Consuming Data from Web Sockets
  • Advanced Routing
  • Angular Animations
  • Testing Angular Components
  • Debugging Angular Applications

Web Age Advanced Angular 2 Training can be delivered in traditional classroom style format. Web Age Advanced Angular 2 Training can also be delivered in a synchronous instructor-led format.


In this training, attendees will learn how to:


Students must have some prior understanding of Angular fundamentals in addition to web development using, HTML, CSS and JavaScript. Experience developing with AngularJS (the prior version) is not required. 

Students without any Angular knowledge could take WA2581 Comprehensive Angular 2 Programming which includees all of the topics from this advanced course in addition to learning Angular fundamentals.


2 Days

Outline of Advanced Angular 2 Programming Training

Chapter 1. Consuming REST Web Services in Angular

  • REST Web Services and Angular
  • Understanding REST
  • REST Example – Create
  • REST Example – Retrieve
  • REST Example – Update
  • REST Example – Delete
  • REST Example – Client Generated ID
  • REST Example – JSON
  • Knowledge of the REST API
  • Common Angular Tasks for REST Communication
  • Angular Service Class Using HTTP Client
  • RequestOptions
  • URL Path Parameters
  • Query Parameters
  • Common HTTP Request Headers
  • Override Default Request Options
  • Returning Response Data
  • GET
  • PUT
  • POST
  • Summary

Chapter 2. Consuming WebSockets Data in Angular

  • Web Sockets Overview
  • Web Sockets Use Cases
  • Web Socket URLs
  • Web Sockets Servers
  • Web Socket Client
  • The library
  • Using in JavaScript
  • Setting up in Angular Projects
  • Using in an Angular service
  • Angular websocket.service Notes:
  • The Angular Web Socket Client Sample App
  • Angular websocket.component.ts
  • The Full websocket.component.ts code
  • Implementation Modifications
  • Summary

Chapter 3. Advanced Routing

  • Routing Overview
  • External Route Configuration File
  • Dedicated Router Module
  • routerLinkActive binding
  • Wildcard Route Path
  • redirectTo
  • Default Route
  • Child Routes
  • Defining Child Routes
  • <router-outlet> for Child Routes
  • routerLink Prefixes
  • Invoking Child Routes
  • Lazy Loading Modules via Child Routes
  • Lazy Loading: The child routing module
  • Lazy Loading: Add routing to the module
  • Lazy Loading: Update the main routing file
  • Navigation Guards
  • Creating Guard Implementations
  • Using Guards in a Route
  • Route Animations
  • Summary

Chapter 4. Angular Animations

  • What is Animation?
  • Animation Techniques
  • Animation Concepts
  • CSS Property Animation
  • Animation Property Settings
  • CSS Transforms
  • Starting and Stopping Animation
  • Animation Events
  • Browser Support
  • Angular Animations
  • Animation Imports
  • Named Animation States
  • Transitions
  • Special States: void, *
  • The animate() function
  • Triggers
  • Assigning Animations to Elements using Trigger
  • Invoking Transitions
  • Assigning Animation to Routes
  • External Animation Definitions
  • Summary

Chapter 5. Testing Angular Components and Services

  • Testing Angular Components
  • Testing Tools
  • Testing Setup
  • Important Test Configuration Settings
  • Typical Testing Process
  • Jasmine Test Suites
  • Jasmine Specs (Unit Tests)
  • Expectations (Assertions)
  • Matchers
  • Examples of Using Matchers
  • Using the not Property
  • Setup and Teardown in Unit Test Suites
  • Example of beforeEach and afterEach Functions
  • Angular TestBed
  • Typical Test Structure
  • Example of Basic Angular Test
  • Basic beforeEach Configuration
  • Automatically Detecting Component Changes
  • Testing External Templates
  • Testing Components With Dependencies
  • Getting Injected Services
  • Testing With Dependencies – Test Double
  • Testing With Dependencies – Spy
  • Testing With Asynchronous Dependencies
  • Testing Components With @Input and @Output
  • Testing Routed Components
  • Summary

Chapter 6. Developing Using AngularCLI

  • What is AngularCLI?
  • AngularCLI Prerequisites
  • Installing AngularCLI
  • Command Help
  • Creating an App
  • Running Angular CLI Apps with ng serve
  • ng serve options
  • AngularCLI Blueprints
  • Generating Components
  • The .angular-cli.json Settings File
  • Generated Modules
  • Generated Services
  • Generated Specs for Unit Testing
  • An Example Unit Test Spec
  • Running Unit Tests
  • End to End Testing
  • Example End to End Test:
  • Summary

Chapter 7. Debugging

  • Debugging Overview
  • Basic Debugging Practices
  • Development (Debug) Mode
  • Selecting Elements to Inspect
  • Inspecting Angular Components with ng.probe
  • Saving ng.probe Component References
  • Modifying Values using Component References
  • Using Breakpoints in Angular Code
  • Breakpoint in TypeScript Code
  • What is Augury?
  • Installing Augury
  • Opening Augury
  • Augury - Component Tree
  • Augury - Router Tree.
  • Augury - NgModules Tab
  • Common Exceptions
  • Common Exceptions: 'No such file: package.json'
  • Common Exceptions: 'Cant bind to ngModel'
  • Common Exceptions: 'router-outlet not a known element'
  • Common Exceptions: 'No provider for Router!'
  • Summary

Chapter 8. Angular Style Guide

  • What is the Angular Style Guide?
  • Style Categories
  • Single Responsibility
  • Naming
  • Coding Conventions
  • App Structure and Angular Modules
  • Components
  • Directives and Services
  • Summary

Lab Exercises

Lab 1. Angular Communication with REST Services
Lab 2. Consuming Data from Web Sockets
Lab 3. Advanced Routing
Lab 4. Angular Animations
Lab 5. Testing Angular Components
Lab 6. Debugging Angular Applications

We regularly offer classes in these and other cities. Atlanta, Austin, Baltimore, Calgary, Chicago, Cleveland, Dallas, Denver, Detroit, Houston, Jacksonville, Miami, Montreal, New York City, Orlando, Ottawa, Philadelphia, Phoenix, Pittsburgh, Seattle, Toronto, Vancouver, Washington DC.
US Inquiries / 1.877.517.6540
Canadian Inquiries / 1.877.812.8887