Blazor de zéro : une nouvelle série

· 4 min de lecture

Cela fait un moment que j’écris sur Blazor — les cycles de vie des composants, le CSS isolé, les modèles d’interactivité, l’authentification. Ces articles ont été utiles pris individuellement, mais j’ai toujours senti qu’ils manquaient de fondation. Ils supposent que vous savez déjà ce qu’est Blazor, pourquoi il existe et comment il s’intègre dans l’écosystème .NET. Ce n’est pas le cas de tout le monde, et c’est tout à fait normal.

Je commence donc quelque chose de nouveau : Blazor de zéro. Une vraie série, construite depuis les bases, destinée aux développeurs qui veulent réellement comprendre ce qu’ils construisent — pas seulement copier-coller jusqu’à ce que ça fonctionne.

À qui s’adresse cette série

Cette série est faite pour vous si :

  • Vous êtes un développeur .NET qui a entendu parler de Blazor mais n’a jamais trouvé le bon moment ou le bon point de départ pour s’y plonger.
  • Vous avez essayé Blazor, vous l’avez fait fonctionner, mais vous avez le sentiment de deviner pourquoi les choses fonctionnent.
  • Vous venez du monde JavaScript/React/Angular et voulez comprendre ce que Microsoft propose pour le frontend moderne.
  • Vous voulez une ressource unique et cohérente plutôt que de la documentation éparpillée et des articles de blog dispersés.

Vous n’avez pas besoin d’être un développeur senior. Vous devez en revanche être à l’aise avec les bases de C# — classes, interfaces, async/await. Si vous pouvez écrire une simple API CRUD en ASP.NET Core, vous êtes prêt.

Ce que nous allons couvrir

Voici une feuille de route approximative de ce que j’ai prévu. Certains sujets se développeront en plusieurs articles si nécessaire :

  1. Qu’est-ce que Blazor ? — Modèles d’hébergement, historique, comparaison avec le développement web traditionnel
  2. Votre première app Blazor — Scaffolding, structure du projet, exécution en local
  3. Les composants — Le bloc fondamental de toute interface Blazor
  4. Liaison de données et événements — Rendre votre interface réactive
  5. Communication entre composants — Paramètres, EventCallbacks, valeurs en cascade
  6. Routing et navigation — Comment Blazor gère les URLs et les transitions de pages
  7. Injection de dépendances — Services, scopes et le conteneur DI dans Blazor
  8. Formulaires et validation — EditForm, DataAnnotations, validateurs personnalisés
  9. HTTP et données externes — Appeler des APIs depuis votre app Blazor
  10. Authentification et autorisation — Sécuriser votre app correctement
  11. Interop JavaScript — Quand vous avez besoin d’accéder au navigateur
  12. Performance et optimisation — Virtualisation, lazy loading, stratégies de rendu
  13. Tester les composants Blazor — bUnit et à quoi ressemble un bon test
  14. Déploiement — Publier sur Azure, IIS et les hébergeurs statiques

Cette liste évoluera. Certains sujets seront divisés en plusieurs articles ; d’autres pourront être fusionnés. Je mettrai à jour cet article au fil de la série et ajouterai des liens vers chaque entrée au fur et à mesure de leur publication.

Pourquoi une série, pourquoi maintenant

Blazor a beaucoup mûri. Avec .NET 8 et 9, le modèle de rendu a été profondément remanié — SSR statique, streaming rendering, Server interactif, WebAssembly interactif et le mode Auto coexistent désormais sous le même toit. C’est un framework vraiment intéressant et capable, mais la complexité croissante rend l’expérience de démarrage désorientante.

Je veux construire une ressource qui vous rencontre là où vous en êtes et vous guide à travers tout de manière systématique. Pas un remplacement de la documentation officielle — elle est bonne et vous devriez la lire — mais un complément qui explique le pourquoi derrière le quoi.

Comment suivre la série

Chaque article de la série sera suffisamment autonome pour être lu seul, mais ils s’appuieront aussi les uns sur les autres. Si vous commencez de zéro, je recommande de suivre l’ordre. Si vous rejoignez la série pour combler un manque précis, c’est aussi possible — je renverrai aux articles prérequis lorsque c’est nécessaire.

Le code de chaque article sera disponible sur GitHub. Je partagerai les liens au fur et à mesure.

À bientôt dans le prochain article.