Introducción a Aurelia Framework

Bienvenido al nuevo mundo.

¿Qué es Aurelia?.

Aurelia Framework una plataforma moderna que nos permite construir aplicaciones web progresivas, móviles, de escritorio y web tradicionales.

Aurelia está escrita con TypeScript y JavaScript moderno (ES6), pero a diferencia de otros no es monolítico, pues está compuesto de módulos y características que puedes ir agregando a medida que sean requeridos, como los Nugets packages en .Net los cuales pueden ser instalados a través de gestores de paquetes como NPM,Bower, JSPM o GitHub.

Un poco de historia.

Aurelia fue diseñada y creada en el 2014 por Rob Eisenberg un excelente arquitecto de software, creador de Durandal (en su tiempo un maravilloso frameowrk javascript de SPA), actualmente lidera el equipo del nuevo portal de documentación de Microsoft, aquí pueden encontrar más información. En ese entonces Rob trabajaba en el equipo de Angular 2 y decidió abandonarlo porque sintió que el framework estaba tomando un rumbo que no representaba su visión de lo que un framework moderno debía cumplir o realizar. Unos meses después de esto Rob publica la noticia del lanzamiento de su nuevo framework SPA llamado Aurelia.

¿Por qué elegir Aurelia?.

Strong Web Standar Support.

Aurelia tiene el mejor soporte para estándares.

El equipo de Aurelia se ha enfocado en cumplir con todos los estándares web, tratando de no romper con las convenciones establecidas internacionalmente y lograr que la transición hacia el framework sea lo más limpia posible.

Convention over Configuration.

Convención sobre configuración.

Gracias a esta característica única de Aurelia, nos permitirá crear nuestro código sin necesidad de escribir un montón de anotaciones o diciéndole al framework qué tiene que hacer, las convenciones hacen que el framework entienda que deseas hacer y realice la configuración automáticamente por ti. Esto nos permite concentrarnos en nuestro código sin tener que escribir cosas extras para que funcione.

Unobtrusive Application Development

Extremadamente discreto.

Muchos de los frameworks fuerzan a transformar los objetos a su manera para que puedan funcionar, por ejemplo utilizando decoradores, o Apis por lo cual el framework termina infestando nuestro código. Con Aurelia tendremos una clase simple (vanilla) de JavaScript o TypeScript y no veremos al framework en sí y esto hace que tu código evolucione mejor en el tiempo y ser mucho más mantenible. Lo anterior nos permite enfocarnos en nuestra lógica de negocios y en los estándares Webs mas que en el framework.

Blazing Speed

Supremamente rapido

Aurelia es extremadamente rápido, podemos ver su rendimiento en dbmonster y compararlo con otros frameworks. Para que nos hagamos una idea de su velocidad la versión optimizada de Aurelia de 3 a 4 veces más rápida que la versión optimizada de React, y en algunos casos la versión optimizada de Aurelia es más rápida que la versión optimizada de Angular 2.

Progresive Enhancement.

Migra tu aplicación progresivamente.

Aurelia es uno de los pocos frameworks que nos permite ir adaptando nuestra antigua aplicación por partes, es decir que en una aplicación web existente hecha en cualquier tecnología podemos implementar Aurelia sólo donde lo necesitamos sin necesidad de reconstruir el sitio completo. Esto nos permite mejorar tu sitio actual un componente a la vez.

Extensive 1st Party Plugin Options

Gran cantidad de Plugins incluidos con el framework.

Aurelia cuanta con una gran cantidad de plugins que están soportados por el equipo de desarrollo y que facilitan el trabajo, algunos de estos Plugins son:

  • Router: Navegación de la app.
  • EventAggregator: Mensajería entre módulos.
  • Fetch: API para consumir servicios http.
  • Dialog: Crea diálogos o popups.
  • i18n: Internacionalización o traducción de pagina a otros idiomas.
  • UX: Galería de controles y características para la interfaz de usuario.
  • HMR: Hot Module Reload, nos permite ver los cambios en el navegador cuando son realizados en el código fuente.

Un paraíso para los programadores de ASP.NET.

Compatibilidad con todas las tecnologías ASP.NET.

Aunque Aurelia es compatible con cualquier plataforma de backend web y se puede hostear en cualquier tecnología de hosting. Si eres programador ASP.NET con Aurelia te sentirás como en casa, incluso si no conoces mucho de la web pero has trabajado con XAML en Xamarin en WPF o en UWP también te sentirás muy cómodo pues verás las mismas cosas a las que estás acostumbrado, instalación de paquetes, MVVM, publicación, empaquetamiento y su sintaxis intuitiva harán que tu transición sea muy suave.


Comunidad y Soporte.

Aurelia es open source y puedes encontrar su repositorio de código en Git Hub donde podrás contribuir con tus propias mejoras. Cuenta con una comunidad creciente y realizan actualizaciones cada 2 meses aproximadamente. Aurelia es soportada por Blue Spire una compañía estadounidense que brinda soporte pago para temas avanzados o incidentes, pero también cuenta con un blog, una excelente documentación y 2 años de incidentes en Git Hub y Stack Overflow. La mayoria de las galerias de controles ya tienen soporte oficial para Aurelia entre ellas Kendo UI y Syncfusion JS.

Daniel Meza

Read more posts by this author.

Subscribe to Senpai Blog

Get the latest posts delivered right to your inbox.

or subscribe via RSS with Feedly!