Initialisation des systèmes...

Baptiste.Dev
Retour aux notes
FrameworksDébutantSérie : Blazor / Razor

Razor & Blazor : Introduction

Razor est une syntaxe, Blazor est un framework qui l'utilise : le décor du web en .NET, et ce qui distingue Razor, Blazor et ASP.NET avant d'entrer dans le concret.

Par Baptiste Vidal
2 min de lecture
Mis à jour il y a 2 semaines
blazorrazordotnetcsharpfrontendintroduction

Razor & Blazor : Introduction

Pour faire du web en .NET, deux noms reviennent sans cesse : Razor et Blazor. On les confond souvent. En une phrase : Razor est une syntaxe, Blazor est un framework qui l'utilise. Cette note pose le décor avant d'entrer dans le concret.


# Razor : la syntaxe

Razor est une syntaxe de template : elle permet d'écrire du HTML et du C# dans le même fichier, avec le @ comme trait d'union. C'est compilé et fortement typé : les erreurs sortent à la compilation, pas à l'exécution. On la retrouve dans deux extensions :

  • .cshtml : les vues ASP.NET (MVC, Razor Pages).
  • .razor : les composants Blazor.

# Blazor : le framework

Blazor est un framework d'interfaces web interactives bâti sur des composants Razor. Son pari : écrire le front-end en C# plutôt qu'en JavaScript. Là où tu prendrais React ou Angular, Blazor te laisse rester en C# : même langage back et front, mêmes modèles partagés, mêmes outils.

Un composant Blazor joue le même rôle qu'un composant React : une brique d'interface réutilisable, avec ses paramètres et son état.


# Razor, Blazor, ASP.NET : qui fait quoi

Trois termes voisins, trois rôles distincts :

TermeCe que c'est
RazorLa syntaxe qui mêle HTML et C# (.cshtml, .razor)
ASP.NET MVC / Razor PagesGénèrent du HTML côté serveur avec Razor (web classique, peu ou pas interactif)
BlazorUn framework d'UI interactive fait de composants Razor (.razor)

Autrement dit : Razor est le point commun. ASP.NET s'en sert pour rendre des pages, Blazor pour construire des applications interactives.

Razor accompagne ASP.NET depuis 2011. Blazor est bien plus récent : il a repris cette syntaxe pour en faire un vrai framework d'UI, stabilisé autour de .NET 5 (2020) et unifié depuis .NET 8.


# À retenir

  • Razor = une syntaxe (HTML + C# via @), compilée et typée, dans .cshtml et .razor.
  • Blazor = un framework qui construit des UI interactives en C# à partir de composants Razor.
  • ASP.NET MVC / Razor Pages utilisent aussi Razor, mais pour du HTML côté serveur.
  • L'atout de Blazor : le même langage (C#) du back au front.

Prochaine étape : entrer dans la syntaxe avec Razor : la syntaxe.