Course Outline
Introduction
- What is Angular?
- Angular vs React vs Vue
- Overview of Angular 17 features and architecture
- Setting up the Development Environment
Getting Started
- Creating a new Angular 17 project using 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, etc.
- 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, etc.
- 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 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, etc.
- Using built-in validators such as required, minLength, maxLength, etc.
- Creating and using custom validators
HTTP Client
- Understanding the role of 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
- Giving 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 the block's content and its dependencies
- Giving 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 customize the animations and transitions between views
- Introducing the new withViewTransitions directive that enables the use of the view transitions API
- Giving 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 the browser history
Other Features and Improvements
- Briefly summarizing some of the other features and improvements that Angular 17 offers, such as:
- Support for passing in @Component.styles as a string
- Angular's animations code is lazy-loadable
- TypeScript 5.2 support
- The core signal API is now stable
- Node.js v16 support has been removed and the minimum support version is v18.13.0
- Esbuild will be the default builder and the default dev server will use Vite
Summary and Next Steps
Requirements
- An understanding of HTML, CSS, and JavaScript
- Experience with TypeScript and RxJS
- Web development experience
Audience
- Developers who wish to learn how to use Angular 17 to create dynamic and responsive web applications
- Developers who wish to upgrade their skills from previous versions of Angular
- Programmers who wish to explore the new features and improvements of Angular 17
Delivery Options
Private Group Training
Our identity is rooted in delivering exactly what our clients need.
- Pre-course call with your trainer
- Customisation of the learning experience to achieve your goals -
- Bespoke outlines
- Practical hands-on exercises containing data / scenarios recognisable to the learners
- Training scheduled on a date of your choice
- Delivered online, onsite/classroom or hybrid by experts sharing real world experience
Private Group Prices RRP from £7600 online delivery, based on a group of 2 delegates, £2400 per additional delegate (excludes any certification / exam costs). We recommend a maximum group size of 12 for most learning events.
Contact us for an exact quote and to hear our latest promotions
Public Training
Please see our public courses
Testimonials (1)
It was very interactive and informative. The trainer was very patient with us when we didn't understand something and ensured no one was left behind throughout the training.