Get in Touch

Course Outline

Introduction

  • What is Angular?
  • Angular compared to React and Vue
  • Overview of Angular 17 features and architecture
  • Setting up the development environment

Getting Started

  • Creating a new Angular 17 project using the Angular CLI
  • Exploring the project structure and files
  • Running and serving the application
  • Displaying data using interpolation and expressions

Components

  • Understanding the role of components in Angular 17
  • Creating and using components
  • Passing data between components using inputs and outputs
  • Using component lifecycle hooks

Directives

  • Understanding the difference between structural and attribute directives
  • Creating and using built-in directives such as ngIf, ngFor, ngSwitch, and others
  • Creating and using custom directives

Pipes

  • Understanding the purpose of pipes in Angular 17
  • Creating and using built-in pipes such as date, currency, json, and others
  • Creating and using custom pipes

Services

  • Understanding the role of services in Angular 17
  • Creating and using services
  • Injecting dependencies using providers

Modules

  • Understanding the role of modules in Angular 17
  • Creating and using modules
  • Importing and exporting modules

Data Binding

  • Understanding the difference between one-way and two-way data binding
  • Creating and using property binding, event binding, and the "banana-in-a-box" syntax
  • Using template reference variables

Routing

  • Understanding the role of routing in Angular 17
  • Creating and configuring routes
  • Navigating between routes using routerLink and router.navigate()
  • Using route parameters, query parameters, and fragments

Forms

  • Understanding the difference between template-driven and reactive forms
  • Creating and validating forms using form controls, form groups, form arrays, and more
  • Using built-in validators such as required, minLength, maxLength, and others
  • Creating and using custom validators

HTTP Client

  • Understanding the role of the HTTP client in Angular 17
  • Creating and using HTTP requests to communicate with backend services
  • Using observables to handle asynchronous data streams
  • Using interceptors to modify or handle HTTP requests or responses

New, Declarative Control Flow

  • Explaining the new template control block syntax and how it simplifies common tasks like conditional rendering, looping, and handling empty collections
  • Providing examples of using the new blocks, such as @if, @else, @switch, @case, @default, @for, and @empty
  • Comparing the new syntax with the previous one, such as *ngIf, *ngSwitch, and *ngFor
  • Mentioning how the new control blocks support zoneless applications with signals

Deferred Loading Blocks

  • Explaining the concept of deferred loading and how it can improve the performance and user experience of web applications
  • Introducing the new @defer control block that enables lazy-loading of block content and its dependencies
  • Providing examples of using the @defer block for different scenarios, such as loading components, directives, pipes, animations, and styles
  • Mentioning how the @defer block works with the new View Transitions API

View Transitions API

  • Explaining the purpose and benefits of the View Transitions API, which allows developers to customise animations and transitions between views
  • Introducing the new withViewTransitions directive that enables the use of the View Transitions API
  • Providing examples of using the withViewTransitions directive with different transition types, such as fade, slide, zoom, and flip
  • Mentioning how the View Transitions API works with the Angular router and browser history

Other Features and Improvements

  • Briefly summarising some of the other features and improvements that Angular 17 offers, such as:
  • Support for passing @Component.styles as a string
  • Angular's animations code is now lazy-loadable
  • Support for TypeScript 5.2
  • The core signal API is now stable
  • Node.js v16 support has been removed; the minimum supported version is now v18.13.0
  • Esbuild will be the default builder, and the default dev server will use Vite

Summary and Next Steps

Requirements

  • A solid understanding of HTML, CSS, and JavaScript
  • Experience with TypeScript and RxJS
  • Background in web development

Audience

  • Developers eager to learn how to use Angular 17 to create dynamic and responsive web applications.
  • Developers looking to upgrade their skills from previous versions of Angular.
  • Programmers interested in exploring the new features and improvements introduced in Angular 17.
 28 Hours

Number of participants


Price per participant

Testimonials (2)

Provisional Upcoming Courses (Require 5+ participants)

Related Categories