Angular

Angular

FRONTEND

Framework frontend completo sviluppato da Google con TypeScript come linguaggio principale. Architettura modulare basata su componenti, Dependency Injection nativa, RxJS per la programmazione reattiva e CLI robusto per costruire applicazioni web scalabili e manutenibili.

Cosa imparerai

TypeScript rigoroso con decorator e tipi avanzati (@Component, @Injectable)

Architettura modulare con NgModule e lazy loading

Dependency Injection gerarchica con provider e scope

RxJS per programmazione reattiva (Observable, Operator, Subject)

Sintassi template potente (data binding, direttive, pipe)

Form robusti (Template-driven e Reactive Forms con validazione)

Router avanzato con guard, resolver, lazy loading e preloading

HttpClient con interceptor, caching e gestione errori

Signal per gestione dello stato reattiva (Angular 16+)

Testing completo (Jasmine, Karma, TestBed, mock, E2E con Cypress)

Argomenti chiave da padroneggiare

I concetti più importanti per comprendere questa tecnologia e superare i colloqui

1

TypeScript: decorator, tipi avanzati, interfacce, generics

2

Componenti: template, stili, lifecycle hook, ViewChild, ContentChild

3

Data binding: interpolazione, property binding, event binding, two-way binding

4

Direttive: strutturali (*ngIf, *ngFor, *ngSwitch), attributo (ngClass, ngStyle), personalizzate

5

Pipe: built-in (date, async, json), pipe personalizzate, pure vs impure

6

Servizi e Dependency Injection: provider, DI gerarchica, token di iniezione

7

RxJS: Observable, Operator (map, filter, switchMap, mergeMap), Subject, unsubscribe

8

Form: Template-driven vs Reactive, FormControl, FormGroup, validatori, validatori async

9

Routing: route, RouterLink, RouterOutlet, guard (CanActivate, CanDeactivate), resolver

10

HttpClient: GET/POST/PUT/DELETE, interceptor, gestione errori, logica di retry

11

Change Detection: strategie (Default, OnPush), zone, trigger manuale

12

NgModule: import, export, dichiarazioni, provider, lazy loading

13

Signal: signal(), computed(), effect(), stato reattivo (Angular 16+)

14

Gestione dello stato: servizi con BehaviorSubject, NgRx (Store, Effects, Selector)

15

Testing: test unitari (Jasmine, TestBed), test componenti, mock dei servizi, E2E

16

Performance: OnPush, trackBy, lazy loading, strategie di preloading, ottimizzazione bundle

17

Angular CLI, configurazione build, distribuzione, SSR con Angular Universal