Blazor desde cero: una nueva serie

· 3 min de lectura

Llevo un tiempo escribiendo sobre Blazor — ciclos de vida de componentes, CSS aislado, modelos de interactividad, autenticación. Estos posts han sido útiles por sí solos, pero siempre he sentido que les falta base. Dan por hecho que ya sabes qué es Blazor, por qué existe y cómo encaja en el ecosistema .NET. No todo el mundo lo sabe, y está perfectamente bien.

Por eso empiezo algo nuevo: Blazor desde cero. Una serie en condiciones, construida desde los cimientos, pensada para desarrolladores que quieren entender de verdad lo que están construyendo — no solo copiar y pegar hasta que funcione.

A quién va dirigida esta serie

Esta serie es para ti si:

  • Eres desarrollador .NET, has oído hablar de Blazor pero nunca has tenido el momento ni el punto de partida adecuado para adentrarte.
  • Has probado Blazor, lo has hecho funcionar, pero tienes la sensación de que estás adivinando el por qué de las cosas.
  • Vienes del mundo JavaScript/React/Angular y quieres entender cómo es la apuesta de Microsoft para el frontend moderno.
  • Quieres un recurso único y coherente en lugar de documentación dispersa y posts sueltos.

No necesitas ser desarrollador senior. Sí necesitas sentirte cómodo con lo básico de C# — clases, interfaces, async/await. Si puedes escribir una API CRUD sencilla en ASP.NET Core, estás listo.

Qué vamos a ver

Aquí tienes un esquema aproximado de lo que tengo planificado. Algunos temas se expandirán en varios posts según sea necesario:

  1. ¿Qué es Blazor? — Modelos de alojamiento, historia, cómo se compara con el desarrollo web tradicional
  2. Tu primera app Blazor — Scaffolding, estructura del proyecto, ejecución en local
  3. Componentes — El bloque fundamental de cualquier interfaz en Blazor
  4. Data binding y eventos — Cómo hacer que tu interfaz sea reactiva
  5. Comunicación entre componentes — Parámetros, EventCallbacks, valores en cascada
  6. Routing y navegación — Cómo gestiona Blazor las URLs y las transiciones de página
  7. Inyección de dependencias — Servicios, scopes y el contenedor DI en Blazor
  8. Formularios y validación — EditForm, DataAnnotations, validadores personalizados
  9. HTTP y datos externos — Llamadas a APIs desde tu app Blazor
  10. Autenticación y autorización — Cómo proteger tu app correctamente
  11. Interop con JavaScript — Cuándo necesitas llegar al navegador
  12. Rendimiento y optimización — Virtualización, lazy loading, estrategias de renderizado
  13. Testing de componentes Blazor — bUnit y cómo es un buen test
  14. Despliegue — Publicar en Azure, IIS y hosts estáticos

Esta lista irá evolucionando. Algunos temas se dividirán en varios posts; otros puede que se fusionen. Actualizaré este post conforme avance la serie e iré añadiendo enlaces a cada entrada según se publiquen.

Por qué una serie, por qué ahora

Blazor ha madurado mucho. Con .NET 8 y 9, el modelo de renderizado se renovó en profundidad — SSR estático, streaming rendering, Server interactivo, WebAssembly interactivo y el modo Auto conviven ahora bajo el mismo techo. Es un framework genuinamente interesante y capaz, pero el salto en complejidad hace que la experiencia inicial pueda ser desconcertante.

Quiero construir un recurso que te encuentre donde estás y te guíe por todo el camino de forma sistemática. No pretende reemplazar la documentación oficial — es buena y deberías leerla — sino ser un complemento que explique el por qué detrás del qué.

Cómo seguir la serie

Cada post de la serie será lo bastante autocontenido como para leerse por separado, pero también se apoyarán entre sí. Si empiezas desde cero, te recomiendo ir en orden. Si te unes para cubrir un hueco concreto, también está bien — enlazaré los posts previos necesarios cuando sea relevante.

El código de cada post estará disponible en GitHub. Iré compartiendo los enlaces a medida que avancemos.

Nos vemos en el siguiente.