{Blazor & Aplicaciones Móviles Nativas}


Imagen relacionada

El 14 de enero de 2020, Microsoft presentó el nuevo Mobile Experimental Blazor Binding para desarrollar aplicaciones móviles multiplataforma con Blazor. Cabe destacar que por ahora es solo una versión experimental, pero ya podemos comenzar a trabajar y jugar para aprender sobre Mobile Blazor Binding para desarrollar nuestra aplicación móvil usando el código Blazor.

Pero…¿qué es Blazor?

Blazor es un marco web gratuito y de código abierto que permite a los desarrolladores crear aplicaciones web usando C# y HTML Este viene incluido de forma oficial en la nueva versión de .NET Core 3.0 para desarrollar Single Page Applications (SPA) en el mundo .NET utilizando Razor y C#. Su nombre viene de la combinación de las palabras “Browser” y “Razor”.

Este framework se ejecuta mediante estándares web, por lo que no será necesario utilizar ningún plugin ni realizar ninguna transpilación* para que funcione. Esto es así porque todo el código se ejecuta en el navegador mediante un .NET Runtime implementado en WebAssembly.

¿En qué se diferencia Blazor de otras herramientas como Silverlight?

Tal y como lo mencione anteriormente, Blazor se basa en HTML, CSS y otras tecnologías estándar de la web. Es un framework SPA moderno inspirado por otros frameworks ya existentes, como React, Angular y Vue, por lo que se trata de una herramienta muy potente para el desarrollo web con la potencia de C#.

Captura de Pantalla 2020-01-27 a la(s) 15.56.47

El proyecto Experimental Mobile Blazor Bindings permite el desarrollo de aplicaciones móviles nativas a través de C# y .NET para Android e iOS, aprovechando patrones de programación web familiares. El objetivo del proyecto es descubrir si a los desarrolladores les gusta la opción de escribir marcas y realizar enlaces de datos para aplicaciones móviles nativas utilizando el modelo de programación estilo Blazor con sintaxis y características Razor. Si es así, Microsoft puede admitirlo en una versión futura del IDE de Visual Studio.

Con los enlaces móviles de Blazor, los desarrolladores pueden aprovechar las habilidades web existentes para crear aplicaciones nativas de iOS y Android con tecnología .NET. El modelo de programación Blazor y la sintaxis de marcado Razor se pueden usar para definir los componentes de la interfaz de usuario y los comportamientos de una aplicación. Los componentes de la interfaz de usuario incluidos se basan en controles de interfaz de usuario nativos de Xamarin.Forms.

Blazor se ejecuta en .NET Standard 2.0, esto quiere decir que para comenzar a trabajar con enlaces Blazor móviles, debemos de contar con .NET Core 3.0 o 3.1 SDK , Visual Studio o Visual Studio para Mac. También se necesita tener instalado el desarrollo web ASP.NET y Xamarin.Forms. Cabe destacar que existen aplicaciones de ejemplo, los cuales están disponibles en GitHub. Las plantillas se pueden instalar ejecutando el siguiente comando desde una ventana de comandos / shell:

dotnet new -i Microsoft.MobileBlazorBindings.Templates::0.1.173-beta

También podemos crear nuestro primer proyecto utilizando el siguiente comando:

dotnet new mobileblazorbindings -o MyFirstApp				data-mce-type="bookmark" 				id="mce_SELREST_start" 				data-mce-style="overflow:hidden;line-height:0" 				style="overflow:hidden;line-height:0" 			></span>

Beneficios

Blazor provee todos los beneficios de un framework de UI en el lado de cliente (y opcionalmente en el servidor):

  • Layout
  • Routing
  • Formularios y validación
  • Inyección de dependencias
  • Modelo de componentes UI
  • Renderizado de UI en servidor
  • Interoperabilidad con Javascript
  • Live-reloading durante el desarrollo

Junto a los beneficios que otorgan otros frameworks, encontramos beneficios propios de Blazor, como son:

  • Uso de librerías en .NET Estándar 2.0 o superior
  • Funcionamiento sin necesidad de ejecutar .NET en el servidor
  • Reducción del tamaño del payload para disminuir los tiempos de descarga

Por último, se pueden destacar los siguientes beneficios de utilizar .NET en un navegador:

  • Velocidad y escalabilidad
  • Estabilidad y consistencia
  • Uso de lenguajes modernos e innovadores
  • Aprovechamiento de skills existentes para un desarrollo full-stack
  • Desarrollo con herramientas líderes, como la familia de productos Visual Studio
  • Amplia compatibilidad con navegadores (es compatible con los navegadores líderes de escritorio y móvil)

Conclusión

A pesar de que Mobile Blazor es algo “experiemental”, desde mi punto de vista veo que es algo que se necesita, puesto que es algo realmente necesario para que todos los desarrolladores web puedan comenzar y desarrollar aplicaciones móviles nativas, así como para los amantes de C# que no están muy familiarizados con el desarrollo de aplicaciones nativas, incluso si no están muy familiarizados con Xamarin.

Ya con esto, Microsoft brinda un nuevo framework para aumentar la productividad de los equipos Full Stack Web Developers en la construcción de aplicaciones web SPA, facilitando el desarrollo web end-to-end, sin dedicar esfuerzos extra en aprender otros lenguajes JavaScript para realizar los proyectos.

Más información:

WebApps/Blazor
Channel 9 Welcome to Blazor

Si te ha gustado el articulo, ¡sígueme en Twitter y no te pierdas los próximos posts sobre Blazor!

Transpilación: La transpilación es un tipo especial de compilador que traduce de un lenguaje fuente a otro fuente también de un nivel de abstracción parecido.

 

Responder

Por favor, inicia sesión con uno de estos métodos para publicar tu comentario:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google photo

Estás comentando usando tu cuenta de Google. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s

WordPress.com.

Subir ↑

A %d blogueros les gusta esto: