Mastering Angular 18 Boot Camp (TT4168)

Geared for experienced web developers, our Mastering Angular 18 Boot Camp is a five-day, comprehensive hands-on program that explores the latest features and benefits Angular has to offer. Throughout the course, you’ll learn the practical ’real-world’ foundational and advanced Angular skills required to solve the usual challenges you might face when developing modern web applications with JavaScript. 


Kicking off with an in-depth introduction to Angular CLI and TypeScript, the course propels you into the world of component-driven development, touching on vital topics like data-binding, directives, and services. As you advance through the curriculum, you'll explore SPA routing, the RxJS library, forms, and unit testing, along with HTTP/REST protocols for server interaction.


By the end of this course, you’ll have built a comprehensive application that brings together all these elements: website structuring through components, dynamic interactivity via directives, and custom pipes for content refinement. You'll know how to employ reactive forms for active user engagement and SPA routing for fluid navigation, fortified by efficient data management through services. All of this is underscored by a strong emphasis on unit testing, as well as practical REST API interactions for modern server communication.


You’ll leave the course equipped to construct robust, scalable, and feature-rich web applications using Angular 18, able to implement seamless user experiences, integrate with various data sources through REST APIs, and employ best practices in unit testing for sustainable, high-quality code.

Course Information

Price: $2,795.00
Duration: 5 days
Certification: 
Exam: 
Learning Credits:
Course Delivery Options

Check out our full list of training locations and learning formats. Please note that the location you choose may be an Established HD-ILT location with a virtual live instructor.

Train face-to-face with the live instructor.

Access to on-demand training content anytime, anywhere.

Attend the live class from the comfort of your home or office.

Interact with a live, remote instructor from a specialized, HD-equipped classroom near you. An SLI sales rep will confirm location availability prior to registration confirmation.

All Sunset Learning dates are guaranteed to run!

Register

Prerequisites:

Attendees should have experience with the topics in the following courses, or should have recently attended these as a pre-requisite:

  • TT4003 Introduction to HTML5, CSS3 & JavaScript (3 days) 

 

Target Audience:

The content is appropriate for experienced web developers new to Angular. In order to be successful in the course, you should have solid, current hands-on experience developing basic web applications, and be well versed in HTML5, CSS3 and JavaScript.

 

Course Objectives:

The lab intensive course includes plenty of hands-on lab work designed to immerse you in the skills required to get you up and running with Angular right away. The course is rich with hands-on activities, challenge labs, knowledge checks, valuable discussions and focused projects. 


Guided by our engaging, highly-experienced web development instructor, you will learn how to:

  • Build Powerful Components: Master creating and organizing Angular components, leveraging dependency injection and lifecycle hooks for scalable apps.
  • Harness TypeScript's Power: Become proficient in TypeScript, using its advanced features like classes, interfaces, and decorators to supercharge your Angular development.
  • Create Dynamic, Reactive Forms: Learn to build complex forms with Angular's reactive approach, ensuring seamless validation and user interaction.
  • Connect with RESTful Services: Integrate Angular apps with RESTful services using HttpClient, and handle asynchronous data streams with RxJS for efficient server communication.
  • Optimize with CLI and DevTools: Use Angular CLI for easy project setup and deployment, and harness DevTools for debugging and optimizing your applications.
  • Master SPA Navigation: Implement smooth and efficient Single Page Application (SPA) routing with nested routes and route guards for a top-notch user experience.
  • Utilize Third-Party Libraries: Learn to effectively integrate and manage third-party libraries within Angular to extend functionality and streamline development.
  • Implement Effective Testing: Gain skills in using tools like Jest and Web Test Runner for unit testing, ensuring your Angular applications are robust and error-free.

 

Course Outline:

Getting Started with Angular 

  • Overview of Angular Architecture
    • Angular Versioning
    • Data Binding
    • Component Architecture
    • Show concepts: how to render the content in the browser
    • Components and Dependency Injection
    • Services and Events
    • Common Component Lifecycles and Hooks
  • TypeScript
    • Angular, ES6 and TypeScript
    • Typing and Classes
    • Abstract Classes and Interfaces
    • Interface patterns
    • Annotations
    • Generics
    • Optional Chaining
    • Nullish coalescing
    • Decorators
    • Functional vs Procedural JavaScript
    • Functional Approach
    • Lab: Angular and TypeScript – Enhanced lab
  • Bootstrapping with Angular CLI
    • Angular CLI Overview
    • New Projects with CLI
    • Testing and Generating with CLI
  • Angular Basics
    • Configuration Files
    • Working with angular.json
    • Top-Level Directories
    • Contents of app folder
    • Angular DevTools
    • ng build
    • Lab: Creating Projects with Angular CLI

Working with Angular

  • Components and Events
    • Data Binding and Components
    • Event Binding
    • Custom Events
    • Parent/Child Events
    • EventEmitter/emit()
    • New Input/Output function
    • Lab: Nested Components –
  • Standalone Components
    • Project Setup and Configuration
    • Folder Structure
    • Components
    • Services
    • Routing
    • Versus non-standalone components
    • Versus modules
  • Third Party Libraries
    • Angular and the Need for Libraries
    • Options for adding Libraries
    • Working with npm install
    • Lab: Third-Party Libraries
  • Dynamic Views – Directives
    • View Encapsulation
    • Structural/Attribute Directives
    • Conditional Styling
    • @if/@else
    • @for
    • @defer
    • Lab: Working with Directive
  • Pipes
    • Overview of Pipes
    • Built-in Pipes
    • Formatting and Conversions
    • Parameterizing Pipes
    • Pure vs. Impure Pipes
    • Customizing Pipes
    • Lab: Built-in and Custom Pipes
  • Signals and State
    • What are Signals?
    • How to read the value of a signal?
    • How to modify the value of a signal?
    • The update signal API
    • Read-only signals
    • The computed() Signal API
    • How do we subscribe to a signal?
    • Using effects

Angular Forms

  • Forms and the Forms API – focus on Reactive Forms
    • Template Forms – Overview
    • User Input/Interactions
    • Model-Driven Reactive Forms
    • FormBuilder API
    • Reactive Form Validation
    • Form’s new control state change events
    • Lab: Reactive Forms

Single Page Applications and Routes

  • SPA – Routing
    • Overview of the SPA Concept
    • Routing for Page Display
    • Working with ActivatedRoute
    • Location Strategies
    • Nested Routes
    • Route redirects as functions
    • Lab: Routing
  • Services (Dependency Injection)
    • Angular’s DI Framework
    • Components and Injectables
    • Tree-shakeable providers
    • Services Architecture
    • Service Interfaces and DI
    • Constructor Injection
    • Inject function
    • Scenarios for use
    • Lab: Services
  • Modules
    • Overview of Modules
    • Feature Modules
    • Feature Module Routing
    • Shared Modules
    • Lab: Modules

Using RESTful Services

  • Angular and REST
    • REST in Angular
    • Promises, Observables, Subject
    • HttpClient and Observables
    • Deprecation of HttpClientModule
    • async Pipes and HttpClient Interceptors
    • Angular working with axios
    • Lab: Rest with axios

Reactive Programming in Angular

  • Working with RxJS
    • Working with RxJS in Angular
    • RxJS Operators
      • switchMap, tap, map, forkJoin, combineLatest, …
      • Most used operators
    • asynchronous operations
    • Manipulate stream
    • Lab: Working with RxJS
  • Testing and Angular
    • Testing Dependencies
    • Options for Testing in Angular
    • Using Jest in Angular
    • Using the Web Test Runner
    • Lab: Unit Testing
  • Zoneless
    • The Need for Zoneless Angular
      • Performance considerations
    • Zone Change Detection
    • Advantages and Trade-offs

Bonus Content / Time Permitting

Errors, Debugging and Standalone

  • Angular Error Handling and Debugging
    • With Chrome DevTools
    • With VS Code
    • Http client request errors
    • Lab: Debugging Angular

Angular coding style guide and Best Practices