blog
Artículos Javascript WinJS

WinJS: La Biblioteca de Windows para JavaScript

Si eres de los que aún piensan que todos los proyectos de Microsoft se hacen en entornos cerrados, nadie de fuera tiene acceso a ningún tipo de código, que estos solo funcionan en Windows o IE, tu percepción está a punto de cambiar.

El tema es que hay cambios en Microsoft y algunos son realmente interesantes. Una de estas novedades es WinJS, una Biblioteca de Windows para JavaScript que ya existe hace algún tiempo, pero que es  Open Source o Open Technologies, como lo llaman en Microsoft. Un esfuerzo más en crear “puentes entre Microsoft y tecnologías no-Microsoft”.

¿Qué es WinJS?

WinJS es una biblioteca de JavaScript creada para Windows 8 que sirve para permitir que el usuario tenga una experiencia nativa de calidad, en aplicaciones del entorno Windows usando tecnologías web como HTML, CSS y JavaScript.

WinJS es un kit de herramientas que tiene dos principios:

  • Proporcionar a los desarrolladores un conjunto único de controles de la interfaz de usuario, de alta calidad y alto rendimiento con soporte para interfaz táctil y teclado, y pensado en la accesibilidad
  • Proporcionar a los desarrolladores un conjunto cohesivo de componentes y utilidades para desarrollar la “armadura” y la infraestructura de sus aplicaciones.

WinJS es desarrollado por el equipo de WinJS que trabaja para Microsoft en colaboración con la comunidad Open Source. El objetivo es crear la mejor solución para desarrollar aplicaciones en HTML/JS/CSS.

Para desarrollar con WinJS tienes que asegurar que tienes git y node.js instalados.

Testing

Pero también es posible ejecutar algunas características de WinJS en la web utilizando el sitio web try.buildwinjs.com. La página Try WinJS es un editor online que te permite jugar con los diferentes controles y características disponibles.

En el  playground además de poder practicar, también puedes utilizar algunas de sus características como documentación, pues si pasas el ratón sobre algún elemento o selector, este te informa para qué sirve el elemento, cómo debe ser la estructura correcta, o si es una buena idea utilizarlo. Puedes ver el código, editarlo y ver los resultados en directo.

Otra buena idea de Microsoft es hacer de WinJS, una herramienta multi-plataforma. Soporta Plataformas y dispositivos de Microsoft, Chrome, Firefox, iOS y Android. Ampliándolo a otros navegadores modernos y otros dispositivos, no hay dudas de que se puede llegar más lejos y hacer que desarrolladores acostumbrados al look&feel de las aplicaciones de Windows no tengan que reescribir código, o aprender nuevo código.

Principales características de WinJS

  • Enlace de datos: Con algunas líneas de JavaScript, esta característica te permite enlazar la interfaz de usuario de la aplicación a la lógica de negocio.
  • Soporte a futuros (valor futuro, o promise): Tendrás la funcionalidad asíncrona vía promises. Lo que te dará la posibilidad de agendar tareas en valores que todavía no han sido calculados.
  • Carga de fragmentos: Te permite cargar contenido desde un fichero HTML.
  • Controles de interfaz de usuario: Creo que esta es la característica esencial de WinJS. WinJS te permite desarrollar interfaces de usuario con controles como ListView, y con ello puedes mostrar datos en listas o grids; FlipView, con que puedes mostrar una colección, como un conjunto de fotos o galería; SemanticZoom, que te permite “hacer zoom” entre dos diferentes vistas; AppBar, que te permite tener el menú inferior de tu aplicación. 

Integración

Lo cierto es que WinJS se centra en la interfaz de usuario y está diseñado para funcionar con otros frameworks para desarrollar aplicaciones. WinJS  soporta algunos de los frameworks de JavaScript más populares como AngularJS, KnockoutJS o jQuery, además de otras herramientas y bibliotecas que utilizas en tus proyectos. Esto significa, por ejemplo que si tienes tu proyecto desarrollado en AngularJS, puedes integrar también las características de WinJS que te interesen.

Estos son algunos de los proyectos que integran WinJS

Conclusión

WinJS aún tiene mucho camino por delante, pero el equipo de WinJS quiere tener una herramienta mejor. Siendo ahora una herramienta Open Source, pretenden que el proceso de desarrollo sea transparente, animando a la comunidad a contribuir con nuevas características, corrección de errores, ideas, y feedback en Github. 

Fuentes

Enterprise DevOps Day Barcelona

Artículo anterior
I help Organizations to use Technology to improve people's lives

También te puede interesar

Matrices mágicas: transformando la web con Álgebra Lineal y CSS

JavaScript: ¿Qué hay de nuevo en ES2020?

Algunos conceptos básicos de React: Componentes

La innovación en Pokémon Go