Silverlight fue en algún momento un esfuerzo de Microsoft para competir frente a lo que Flash podía hacer. Se buscaba una interactividad importante con el usuario y el sistema fue lanzado en el 2007. Hoy en día la versión 5.0 es la más reciente y se distribuye gratuitamente. Sin embargo, Silverlight parece ser ya un proyecto por desaparecer, pues incluso el nuevo navegador Edge, de la empresa de las ventanas, no lo va a soportar. No obstante esto, hay una comunidad que piensa que Silverlight mereció mejor suerte y consideran que es una tecnología que no tiene porque morir. Por ello, un grupo de programadores ha decidido escribir Fayde, que no es otra cosa que Silverlight en Javascript.

Fayde, curiosamente, ya lleva tiempo entre nosotros pero por alguna razón no había tenido mucha cobertura mediática. Parece ser que Fayde ha madurado lo suficiente y la implementación hecha puede ser usada para portar proyectos actuales en Silverlight a la nueva plataforma, aunque eso sí, hay que hacer aún un trabajo considerable para ello.

El lenguaje de programación es TypeScript y el XAML entra como un objeto Canvas (donde se pintan los objetos, un lienzo en términos comunes), donde toda la interfaz con el usuario UI, ha sido implementada. Lo que significa es que Fayde reemplaza a HTML/CSS y elimina las inconsistencias de los naegadores con controles XAML en el objeto Canvas. En pocas palabras, si el navegador soporta Canvas, todo debería trabajar adecuadamente. De hecho, Fayde de alguna manera plantea la pregunta de ¿por qué seguir usando HTML? o mejor aún, ¿por qué no usar JavaScript y el Canvas como un «lenguaje de máquina» para una máquina virtual?

Fayde tiene ya todos los controles del núcleo, los estilos, las plantillas y los datos de Silverlight. Tiene incluso algunos controles nuevos y se espera que con el tiempo Fayde se convierta en un superconjunto del enfoque original de Silverlight. Pero hay interesantes noticias también: al ser un sistema de código abierto, cualquiera puede colaborar entrando a GitHub. Se pueden crear nuevos controles usando TypeScript, lo cual básicamente lo hace a partir del Canvas.

Y todo pareciese miel sobre hojuelas, pero Fayde pudiese no ser del gusto de los viejos programadores de Silverlight pues éste no usa C# y no tiene las bibliotecas que Silverlight tenía. Y aunque hay un documento para convertir C# a Javascript, no parece ser lo suficientemente fácil de usar. Es más, si Fayde tiene un problema serio es su falta de documentación. Sin embargo, si se busca usar el enfoque definido por Silverlight bien puede usarse Fayde, aunque, repetimos, se requiere de hacer ciertas conversiones.

Referencias:

https://fayde.io/
https://github.com/wsick/Fayde
i-programmer