This course is intended for those that already have a basic understanding of the Angular fundamentals. It covers advanced topics like reactive programming with RxJS, unit and end-to-end tests, application state management with ngRx, lazy module loading, and token based authentication. The training provides a set of hands-on labs in order to get a deep understanding of the overmentioned advanced topics.
Review of Angular Foundations
MVVM Pattern in Angular
Components, templates, and databinding
Angular Routing and Navigation
Angular CLI
Modular development and Lazy loading
Modular design best practices
Feature, Shared, and Core Modules
Exporting and Providing
Clean imports
Lazy loading strategies
Reactive programming with RxJS
Observable and Observer
Subjects
RxJS Operators
Combining Observables
Error Handling
Practical Application of using RxJS
State management with NgRx
Why NgRx, or any state management solution ?
The Redux Pattern: Store, Actions and Reducers
Folder structure for the Store
Using the store in components
Building an NgRx Example Application
Debugging NgRx
Application Security
Prevention of Cross-site Scripting (XSS)
Sanitizations
Authentication using JSON Web Tokens (JWT)
Managing JWT Tokens
Authorization using Router Guards
Best Practices for Angular App Security
Basic understanding of Angular foundations