00:00:00Il y a exactement 10 ans aujourd'hui — c'est assez incroyable, je dois dire — c'était une journée
00:00:06très importante pour moi : je sortais la première version de mon cours Angular, mon cours Angular 2.
00:00:12Et tout comme Angular, ce cours a énormément évolué au cours de ces 10 dernières années.
00:00:17Je l'ai mis à jour d'innombrables fois car, évidemment, Angular a beaucoup changé.
00:00:23Dans cette vidéo, j'aimerais revenir sur le passé d'Angular, d'où nous
00:00:28venons, où nous en sommes aujourd'hui et, bien sûr, vers quoi nous nous dirigeons.
00:00:32Quel est l'avenir d'Angular et des développeurs, et est-ce toujours une bonne idée de l'apprendre,
00:00:37surtout avec l'IA ? Voyons ça ensemble. Alors, Angular, et plus précisément Angular 2,
00:00:44a été annoncé en 2014 et développé en 2015. À l'époque, c'était très controversé
00:00:53car c'était totalement différent d'Angular 1 (AngularJS), qui était lui-même l'un
00:00:59des premiers frameworks majeurs. Ils avaient été créés pour nous aider à
00:01:05nous passer de jQuery ou, pour le dire autrement, pour construire des applications web
00:01:13plus performantes et interactives. Angular 1 facilitait grandement la création d'applications
00:01:20rendues et contrôlées côté client. Puis Angular 2 est arrivé,
00:01:25et c'était une rupture totale. En 2016, la première version stable d'Angular —
00:01:33enfin, d'Angular 2 — est sortie. Et comme je l'ai dit, c'est en février 2016 que j'ai publié
00:01:40la première version de mon cours pour la bêta d'Angular 2. Il y a eu énormément de changements
00:01:45durant cette phase bêta et même pendant la phase de “release candidate”. J'ai dû mettre
00:01:51le cours à jour très souvent. Mais voilà, Angular 2 était né. Et l'Angular de l'époque,
00:01:58des modules Angular où il fallait utiliser le décorateur “ng module”
00:02:05of Angular modules where you had these classes and you had to add this ng module decorator
00:02:12et déclarer explicitement tous les composants utilisés. Il y avait les composants,
00:02:19les classes de composants et l'injection de dépendances basée sur le constructeur.
00:02:26Sur certains points, c'était assez proche de ce qu'on fait aujourd'hui, ça reste une classe.
00:02:32Mais globalement, l'approche différait. Les “ng modules” sont d'ailleurs un concept que
00:02:39vous ne connaissez peut-être même plus, selon le moment où vous avez commencé Angular
00:02:45ou la version utilisée dans votre entreprise. Car il existe encore beaucoup
00:02:51d'entreprises et de projets qui sont restés sur d'anciennes versions.
00:02:55En 2017, il y a eu cette fameuse version 3 manquante. Angular avait instauré ce rythme
00:03:04de sortie d'une nouvelle version majeure tous les six mois, rythme qui tient toujours.
00:03:11À l'époque, beaucoup de gens n'étaient pas ravis, car ils avaient l'impression
00:03:17qu'Angular allait tout casser tous les six mois. Je me souviens de nombreux commentaires
00:03:23dans mon cours de personnes se plaignant de ces changements constants, mais en réalité,
00:03:27le framework n'a jamais radicalement changé. Ce calendrier servait surtout à
00:03:33introduire de nouvelles fonctionnalités majeures tout en restant très rétrocompatible.
00:03:40Alors, pourquoi pas de version 3 en 2017 ? En fait, au début,
00:03:46il y avait des décalages de version entre les packages du cœur d'Angular et celui du routeur,
00:03:51car Angular est un framework divisé en de nombreux packages distincts.
00:03:57Ils ont donc sauté la version 3 pour réaligner tous les numéros de version.
00:04:03Le grand saut suivant a eu lieu en 2020 avec l'arrivée du compilateur Ivy.
00:04:12Entre 2018 et 2020, l'équipe Angular a travaillé d'arrache-pied sur ce nouveau compilateur,
00:04:19parallèlement à de nombreuses autres petites améliorations.
00:04:25L'idée était de réécrire le fonctionnement interne d'Angular et la façon dont les composants
00:04:31sont compilés en instructions pour manipuler le DOM. L'ancien compilateur
00:04:38présentait des inefficacités qui alourdissaient inutilement la taille des bundles.
00:04:44C'est pour cela qu'ils se sont lancés dans cet énorme chantier de réécriture. Pourquoi c'est important ?
00:04:52Parce que cette période peut être vue comme la “phase ennuyeuse”. De 2017
00:05:01à 2020, peu de choses ont changé en apparence. Il y avait des évolutions internes et des ajustements,
00:05:10mais la manière de construire des composants Angular est restée très stable.
00:05:16Et c'est crucial, car c'était aussi une période de forte concurrence sur le
00:05:22marché des frameworks JavaScript. Vue.js 2 est sorti en 2016,
00:05:27et l'écosystème React était en pleine effervescence. En 2018, React a introduit les hooks.
00:05:36On avait l'impression que tout l'univers JavaScript évoluait à toute vitesse — ce qui n'était
00:05:43pas du goût de tout le monde — alors qu'Angular semblait stagner.
00:05:50Mais ce n'était pas forcément une mauvaise chose. Beaucoup de gens appréciaient
00:05:57cette stabilité, lassés par les changements incessants dans l'écosystème JavaScript.
00:06:03Cela fait presque sourire aujourd'hui quand on voit l'évolution fulgurante dictée
00:06:08par l'IA et les changements quotidiens que nous vivons désormais.
00:06:13Mais à l'époque, c'était le principal reproche. C'était la phase de calme.
00:06:19Cette phase s'est terminée vers 2022 avec Angular 14
00:06:28et l'introduction des “standalone components” (en version préliminaire, il me semble).
00:06:33L'idée révolutionnaire était de pouvoir se passer des modules Angular.
00:06:42Il suffisait d'ajouter un flag “standalone” à votre composant pour pouvoir l'utiliser
00:06:47dans d'autres composants sans passer par un “ng-module”. Vous pouviez toujours les utiliser,
00:06:55voire mélanger les deux approches selon vos besoins.
00:07:00La rétrocompatibilité et la facilité de migration ont toujours été prioritaires pour l'équipe,
00:07:05mais les modules n'étaient plus obligatoires. Après les composants autonomes,
00:07:12tout s'est accéléré en 2023 avec Angular 16, les signaux et bien d'autres nouveautés.
00:07:20Comme une nouvelle façon de rendre le contenu conditionnel avec @if au lieu de la directive ng-if.
00:07:26C'est aussi là que les premières expérimentations sur l'Angular “zoneless” ont commencé.
00:07:34Au départ, Angular 2 utilisait un concept appelé ng-zone ou zone.js.
00:07:40C'était une bibliothèque qui surveillait tous les événements possibles sur une page,
00:07:46comme les clics ou les requêtes HTTP. Elle lançait ensuite la détection
00:07:54de changements pour voir si le DOM devait être mis à jour. L'avantage ?
00:08:00Les mises à jour du DOM semblaient magiques. Contrairement à React, pas besoin d'appeler
00:08:05de “set state” ou d'équivalent. Mais l'inconvénient était ce système de “monkey patching”
00:08:11où une bibliothèque injectait des écouteurs sur tous les événements, avec tout le surpoids
00:08:17et l'impact que cela avait sur la taille du bundle et les performances.
00:08:22C'était donc moins efficace que le mécanisme de React, par exemple.
00:08:28Le “zoneless” a donc été un immense pas en avant, rendu possible par les signaux.
00:08:35Grâce aux signaux, on dispose désormais d'un moyen explicite de dire à Angular qu'un état a changé.
00:08:40Le framework peut alors mémoriser exactement où cet état est utilisé dans le DOM
00:08:46et ne mettre à jour que cette partie précise. Cette réactivité ultra-fine
00:08:52a été introduite en 2023. C'est ce qu'on appelle souvent la “Renaissance d'Angular”.
00:09:01Après la phase de calme et les débuts un peu chaotiques marqués par les ruptures
00:09:08avec Angular 1, Angular a regagné le cœur de la communauté. L'équipe a pris
00:09:15des décisions fortes pour rendre Angular plus léger et plus simple à utiliser,
00:09:23en s'alignant sur ce qui se faisait de mieux ailleurs. Les signaux,
00:09:30par exemple, ont été popularisés par SolidJS, même si l'un des premiers
00:09:36frameworks majeurs à les utiliser était Vue (sous le nom de “refs”).
00:09:43Quoi qu'il en soit, c'est la direction prise par Angular.
00:09:50Pour 2026 et au-delà, les évolutions vont continuer, notamment avec les formulaires basés sur les signaux.
00:09:59L'équipe Angular embrasse aussi l'IA avec un serveur MCP intégré à la CLI
00:10:06pour faciliter le développement assisté par IA et rendre les modèles conscients des spécificités d'Angular.
00:10:13C'est l'histoire d'un framework qui est resté étonnamment stable et rétrocompatible
00:10:19tout au long de sa vie, même s'il s'est réinventé une ou plusieurs fois,
00:10:26selon votre point de vue. Cette stabilité est exemplaire.
00:10:33L'équipe Angular a fait un travail remarquable pour transformer l'image du framework :
00:10:39on est passé d'un outil perçu comme lourd et complexe à un framework moderne.
00:10:46Une chose n'a pas changé : Angular est un framework “tout compris” (“batteries included”).
00:10:54Vous y trouvez tout : gestion des formulaires, routage, requêtes HTTP,
00:10:59injection de dépendances, gestion d'état... Tout est intégré nativement.
00:11:06Pas besoin de bibliothèques tierces, contrairement à React où vous devez souvent
00:11:12ajouter un routeur externe, une bibliothèque de gestion d'état, etc.
00:11:18C'est un aspect très apprécié des entreprises. C'est pourquoi Angular a connu
00:11:23une croissance constante au cours des 10 dernières années. Mais pour être honnête,
00:11:29React a connu une croissance bien plus fulgurante. Si on superpose les courbes,
00:11:37celle d'Angular est à peine visible. Et depuis début 2025, React a littéralement décollé.
00:11:45On sait tous pourquoi : c'est l'effet IA. Comme je l'ai souvent dit,
00:11:54l'IA a un favori bien net, et c'est le combo React, Next.js et Tailwind, pas Angular.
00:12:00Est-ce que ça veut dire qu'Angular est mort ou qu'il ne faut plus l'apprendre ?
00:12:06Et quel est son avenir face à l'IA ? En réalité, Angular reste massivement
00:12:13utilisé par les grandes entreprises, justement pour cette stabilité et cette rétrocompatibilité
00:12:18qui ne sont pas que des mots, mais des faits prouvés sur le long terme.
00:12:27Son approche intégrée le rend très populaire dans le monde professionnel.
00:12:34Certes, React l'est aussi, mais les chiffres de téléchargement ne reflètent pas
00:12:40toujours fidèlement l'usage réel ou la popularité d'Angular dans les grands groupes.
00:12:46Pour vous donner une idée, mon cours compte 850 000 étudiants. Ce n'est pas
00:12:53très loin de mon cours React sur Udemy. Il y a certes plus de cours React
00:13:00très populaires sur la plateforme, mais mon expérience personnelle nuance
00:13:08les statistiques brutes. Je vois constamment des clients entreprises
00:13:15former massivement leurs équipes sur Angular. Ça reste donc, aujourd'hui encore,
00:13:22un excellent choix pour bâtir des applications web modernes. Et le framework est
00:13:29vraiment à la pointe grâce à sa “Renaissance” et aux fonctionnalités à venir.
00:13:36Le facteur X, c'est l'IA. Elle change notre façon de programmer et d'écrire du code.
00:13:43On écrit moins de code manuellement — c'est mon cas en tout cas. J'utilise des outils
00:13:48comme Claude, Code ou Cursor (sur lesquels j'ai d'ailleurs fait des cours,
00:13:57liés sous la vidéo). Notre façon de construire des programmes évolue.
00:14:04Pourtant, nos choix technologiques comptent toujours. On veut des technologies
00:14:09bien maintenues, sécurisées, avec des nouveautés qui améliorent la performance
00:14:14ou permettent de nouveaux usages sans dépendre de tiers. Sur ce plan,
00:14:21Angular reste un choix de premier ordre, tout comme React. Et avant qu'on ne me
00:14:27le dise en commentaire : oui, Vue et Svelte sont géniaux aussi.
00:14:34Mais cette vidéo porte sur Angular. Et oui, c'est toujours un excellent choix.
00:14:40L'IA sait très bien écrire de l'Angular, surtout si vous lui donnez le bon contexte,
00:14:45ce qui est indispensable quelle que soit la techno. Angular est donc bien paré
00:14:51pour ce futur dopé à l'IA. Si vous pensez que dans trois ans, plus personne n'écrira
00:14:57de code et que les technos n'auront plus d'importance, c'est une autre vision.
00:15:02Ce n'est pas la mienne. En utilisant l'IA quotidiennement pour générer la majeure
00:15:08partie de mon code, je constate que savoir la piloter, faire les bons choix technologiques
00:15:13et choisir les bonnes architectures logicielles est plus crucial que jamais.
00:15:19Et Angular y a toute sa place. Voilà pour ce court historique d'un framework
00:15:25qui aura toujours une place spéciale pour moi. C'était mon premier grand cours
00:15:30sur Udemy, et il a tout changé. Il m'a permis de vivre de la création de cours
00:15:35et a impacté la carrière de milliers de personnes. Tous vos messages et retours
00:15:41comptent énormément. Angular a toujours été incroyable, et il l'est tout particulièrement pour moi.
00:15:48than ever. And yeah, Angular is still a great choice there. So that was my short history
00:15:54on Angular, a framework that will always have a special place in my heart. Because as I mentioned,
00:16:00this was the first major course at least that I released on Udemy. And it has changed a lot
00:16:07for me. It allowed me to create courses for a living. It has changed the lives and careers
00:16:13of countless people. I got so many awesome messages and feedback. And therefore, yeah,
00:16:19Angular always was amazing. And it's especially amazing for me.