¿Qué es Blazor?

Blazor es un framework completo para el desarrollo de aplicaciones web SPA, como lo pueden ser Angular, React o Vue. Dispone de sistema de bindingsrouting, componentes, ciclo de vida, validaciones, plantillas, gestión de errores, inyección de dependencias, etc. Todo lo que podemos necesitar para crear aplicaciones web profesionales de calidad.Blazor permite trabajar sin código Javascript, sólamente usando C# 


Blazor es un proyecto desarrollado por Microsoft creado para permitir crear SPAs únicamente usando como lenguajes de programación C# y Razor Pages, haciendo nula la necesidad de programar en Javascript o frameworks derivados.

El objetivo de Microsoft está claro: entrar de manera directa en el mundo de los SPA a través de Blazor, teniendo una curva de aprendizaje plana para los desarrolladores .NET, abstrayendo la complejidad que requiere el tener que trabajar con frameworks Javascript. En consecuencia, se construirán aplicaciones web enriquecidas usando únicamente HTML, CSS y C# en lugar de Javascript.

Vamos a ver los diferentes modelos de hospedaje que ofrece Blazor a continuación.

Modelos de hospedaje de Blazor

Blazor presenta dos enfoques claramente diferenciados:

  • Blazor Server: se construye el DOM que se ha de enviar al cliente desde el servidor. Es el modelo más tradicional, cuyo objetivo es sustituir el modelo Web Forms de .NET. Su principal fuerte es la interacción en tiempo real entre cliente y servidor a través de SignalR.
  • Blazor WebAssembly: modelo SPA basado en WebAssemblyes decir, la construcción del DOM se realizará en el lado del cliente. Permite  a su vez realizar operaciones en el lado del servidor, llamando a APIs para solicitar datos, con la intencionalidad de obtener información sensible que no se quiera calcular en el cliente. Para entender esto, hay que comprender qué es WebAssembly.

 WebAssembly

Esta tecnología tiene la clave del funcionamiento de Blazor WebAssembly, el modelo más novedoso y en el que nos vamos a enfocar de ahora en adelante. WebAssembly (conocido también por su abreviatura Wasm) es un estándar que permite ejecutar código binario en un navegador web para ofrecer un rendimiento a priori mayor que Javascript.

El servidor web se encargará de enviar al navegador cliente que realice una petición a nuestra aplicación las librerías directamente compiladas (dlls), y el navegador a través de esta tecnología sabrá interpretar lo que queremos ejecutar. Como consecuencia, el servidor web se liberará de procesar lógica, ya que se realizará en el cliente.

Con esta aproximación, se sobreentiende la necesidad de mantener un back-end con el procesamiento de información que no se quiera llevar al cliente. Recordemos que las librerías compiladas son fácilmente decompilables, exponiendo nuestro código fuente a cualquier usuario de nuestra aplicación.

Referencias

Comentarios

Entradas populares de este blog

¿Qué es la JCAHO Joint Commission on Accreditation of Healthcare Organizations?

PARSEO DEL CODIGO PDF417 DEL DNI ARGENTINO

¿Como instalar El Cliente de SOPHOS VPN ?