Une formation Angular avancé et personnalisée pour les développeurs expérimentés.
Pourquoi une formation Angular avancé ?
Vous travaillez déjà avec Angular et vous ressentez les limites de l’auto-formation ? Rassurez-vous, vous n’êtes pas seul/e. Se contenter de la documentation officielle montre vite ses limites. Les bonnes pratiques (architecture, optimisation, etc.) nécessitent l’aide d’un expert.
Pourquoi notre formation Angular avancé ?
- Nous sommes une des ressources officielles d’Angular !
- A Paris, notre formateur est contributeur Angular,
- et vous délivre un support de cours de 500 pages.
Angular avancé : pour qui ?
Si vous souhaitez une formation Angular avancé en intra-entreprise (c’est-à-dire pour toute votre équipe, dans vos locaux), c’est l’un des intérêts de ce format : le programme est personnalisable.
Si vous souhaitez une formation Angular avancé en inter-entreprise (c’est-à-dire que vous venez individuellement à une session dans nos locaux), notre formation Angular (tout court) est déjà une formation avancée. En effet :
- tous les sujets dits « avancés » y sont inclus : optimisation, bonnes pratiques, tests, etc.,
- ce que vous ressentez probablement actuellement, c’est un manque d’architecture : ce n’est pas un sujet additionnel qui s’ajouterait aux fondamentaux, c’est quelque chose qui traverse tout Angular, du démarrage du projet à son déploiement,
- la formation Angular (tout court) ne s’adresse pas à des débutants : pour vous donner une idée, l’architecture a 4 paliers. Actuellement, vous êtes probablement au niveau 2. Nous arrivons au niveau 3 dès la première journée de formation. Ce qui signifie que les 3 jours suivants sont pour le niveau 4, soit un niveau vraiment avancé.
Objectifs de la formation Angular avancé
- Approfondir la maîtrise d’Angular
- Mettre à jour son application depuis les versions précédentes
- Optimiser vos applications web
- Mettre en place des tests pour améliorer le développement
- Savoir réutiliser des fonctionnalités en créant une librairie pour Angular
Programme de la formation Angular avancé
Si vous optez pour une formation Angular avancé en intra-entreprise, le programme sera entièrement personnalisable parmi les sujets suivants.
Les classiques d’Angular
- Fondamentaux Angular : composants, services, routing, etc.
- Architecture
- Bonnes pratiques
- Méthodologie et productivité
- Optimisation : lazy-loading, change detection…
- RxJS
Tous ces sujets sont déjà inclus dans la formation Angular classique. N’hésitez pas à vous y référer si vous avez besoin de plus de détails sur le programme spécifique à ces sujets.
Mettre à jour son application
Une formation Angular avancé est l’occasion de voir les nouveautés apportées par les nouvelles versions d’Angular.
- Nouveautés et dépréciations d’Angular 4, 5, 6, 7, 8 & 9
- Nouveautés du CLI
- Nouveautés de TypeScript
- Nouveautés de RxJS
- Migrer de Http à HttpClient (Angular 4+)
- Migrer vers les pipeable operators (RxJS 5.5+)
- Migrer vers les tree-shakables services (Angular 6+)
- Migrer vers le nouveau lazy-loading (Angular 8+)
- Migrer vers Ivy, le nouveau moteur de rendu (Angular 9+)
State / store
La gestion du state dans une application est souvent considérée comme un sujet difficile. On choisit donc souvent une librairie, comme ngrx ou ngxs, mais ce sont des usines à gaz, qui aggravent la complexité du code.
Angular a déjà prévu une librairie pour cela : RxJS. Il faut d’abord la maîtriser (et la formation est faite pour cela), mais une fois que c’est le cas, elle suffit à mettre en place un store simple et efficace.
- Création d’un store
- Gestion du state (ReplaySubject)
- Modification du state (dispatch)
- Récupération du state (select)
Multilingue / internationalisation : @angular/localize
Un système de gestion des traductions est inclus nativement dans Angular.
- Gestion des textes à traduire
- Gestion du pluriel
- Builds localisés
Reactive Forms : @angular/forms
Il existe des options avancées pour gérer des formulaires lourds et/ou dynamiques.
FormControl
etFormGroup
- Formulaires décomposés avec
FormBuilder
- Validateurs personnalisés
Créer une librairie réutilisable
Vous voulez réutiliser une fonctionnalité dans un autre projet ? Nous apprenons à créer une librairie réutilisable, calquée sur les conventions des modules Angular officiels.
- Configuration spécifique des outils
- Permettre de customiser un composant
- Permettre à un service d’être extensible
- NgModules et providers avancés
- Export de l’API publique
- Packaging et publication
Tests : @angular/*/testing
Eviter les régressions, anticiper les problèmes : Angular fournit plusieurs outils de test et le CLI automatise leur configuration et leur exécution.
- Tests unitaires : jasmine, karma et helpers Angular
- Tests end to end : protractor
Ionic / Capacitor / Cordova
Vous ciblez les mobiles et tablettes ? Capacitor d’Ionic, qui remplace Cordova, est là pour vous aider. Il pourra aussi se charger de déployer en mode logiciel de bureau.
- Build Android
- Build iOS
- Build bureau via Electron
WebSocket
Outre le HTTP, il existe un nouveau protocole, les WebSockets, qui permettent de la communication en temps réel. Cela peut être utile pour des messageries, des jeux, du live, etc.
Sécurité
Angular embarque nativement plusieurs mécanismes de sécurité.
- Cross-Site Scripting (XSS)
- Cross-Site Request Forgeries (CSRF/XSRF)
- SubRessource Integrity (SRI)
- Content Security Policy (CSP)
Angular Universal : @angular/platform-server
Le server-side rendering est une autre nouveauté majeure qui pourrait bien être une révolution : les pages de votre application peuvent être pré-générées par le serveur. Qu’est-ce que cela signifie ? Un chargement instantané de votre application, la possibilité de faire également un site web avec Angular et de faire jouer le référencement naturel. Démarré comme un projet à part, Universal a été intégré nativement dans Angular 4 et peut désormais se mettre en place grâce aux dernières mises à jour d’Angular CLI.
- ServerModule
- Moteur back-end (Node.js et autres) : @nguniversal/express-engine
Angular Elements
Vous voulez réutiliser vos composants Angular dans d’autres projets qui tournent sous d’autres technologies (React, Vue.js, JavaScript natif…) ? C’est désormais possible grâce au nouveau package Angular Elements, qui permet de convertir les composants Angular en Web Components standards et natifs. Une révolution.
Cependant, cette fonctionnalité est encore en cours de développement pour un usage simple et optimal.