Llegamos a ustedes gracias a:



Reportajes y análisis

10 herramientas esenciales para desarrolladores de JavaScript

[06/12/2017] JavaScript, al ser el idioma admitido en todos los navegadores mainstream, ha sido clave para el desarrollo de aplicaciones web basadas en navegador, atrayendo la atención de multitud de desarrolladores a la vez que ha sido equipado con nuevas capacidades casi todos los años. Naturalmente, ha surgido un ecosistema de marcos y bibliotecas alrededor de JavaScript en un esfuerzo por agilizar y mejorar el desarrollo de aplicaciones.

Estas herramientas ofrecen capacidades que van desde la gestión de eventos hasta la reducción de códigos y la representación de datos. Estas son las tecnologías más importantes en el kit de herramientas de desarrolladores de JavaScript, para desarrollar aplicaciones web basadas en navegador.

JavaScript esencial: Angular

Angular, anteriormente conocido como AngularJS y desarrollado por Google, es un marco único para el desarrollo web móvil y de escritorio. Dirigido a la creación de aplicaciones web progresivas nativas, Angular ofrece inyección de dependencia, útil para el ensamblaje de servicios de datos para aplicaciones, y una plantilla HTML para crear componentes.

Dónde descargar Angular: La página de inicio rápido del proyecto Angular, hace que a los desarrolladores les sea fácil empezar con Angular.

Características de Angular: La versión Angular de septiembre del 2016 presentó una reescritura basada en TypeScript, el superconjunto de JavaScript tipeado de Microsoft, para superar los límites de rendimiento en la arquitectura Angular original.

Ahora, los desarrolladores están esperando Angular 5, que apareció el 23 de octubre. (No había versiones 3 o 4.) Incluye:

  • Un énfasis en facilitar la creación de aplicaciones web progresivas, para el almacenamiento en caché de aplicaciones en el navegador.
  • Un optimizador de compilación para reducir la aplicación al eliminar el código innecesario.
  • Hacer Diseño de materiales componentes y compatibles con representación del lado del servidor.

Se prevé que Angular 6, que saldría de cinco a seis meses después de la versión 5, se centre en los mismos temas que Angular 5: facilidad de uso, tamaño más pequeño y rendimiento. Angular en sí tiene un ecosistema fuerte, con cuatro bibliotecas de datos y soporte en IDEs como JetBrains IntelliJ Idea.

JavaScript esencial: Aurelia

Compuesto de módulos enfocados, Aurelia es un marco de cliente respaldado por el desarrollador Blue Spire para aplicaciones móviles, de escritorio y web. Promete un procesamiento rápido y una "gran" eficiencia de memoria.

Dónde descargar Aurelia: Puede descargar Aurelia desde GitHub.

Características de Aurelia: Existen módulos de Aurelia para metadatos, inyección de dependencias, encuadernación, plantillas y enrutamiento. Aurelia integra componentes web y ofrece enlaces de datos bidireccionales a los objetos. La mayor parte del código de Aurelia está escrito como JavaScript simple.

Otras características incluyen:

  • Un compilador de HTML para crear elementos personalizados y agregar atributos a los elementos.
  • Soporte para carga dinámica.
  • Un contenedor de inyección de dependencia para construir código acoplado, para pruebas unitarias.
  • La CLI de Aurelia, que presenta una opción para crear nuevos proyectos, requiere Node 4 o superior, NPM 3 y Git.
  • Integración con la biblioteca de polímeros para construir componentes web reutilizables.
  • Herencia de blindables en el motor de plantillas, para situaciones de herencia de componentes.

JavaScript esencial: Backbone.js

Backbone.js, también conocido como Backbone, proporciona estructura a aplicaciones pesadas de JavaScript. Cuenta con modelos con enlace clave-valor y eventos personalizados, que son colecciones con una API que proporciona funciones enumerables y vistas con manejo de eventos declarativo.

Dónde descargar Backbone.js: Puede descargar las versiones de desarrollo y producción de Backbone.js desde el sitio web del proyecto Backbone.

Características de Backbone.js: Los datos en Backbone.js se representan como modelos, que se pueden crear, validar, destruir y guardar en el servidor. Los modelos están conectados a aplicaciones a través de una interfaz RESTful JSON. Con Backbone.js, el modelo desencadena un evento de cambio cuando una acción de UI solicita que cambie un atributo de un modelo. Las vistas que muestran el estado del modelo pueden ser notificadas de este cambio y reproducirse.

JavaScript esencial: Ember.js

Ember.js es un marco que enfatiza la productividad inmediata. Cuenta con plantillas integradas, llamadas manillares, que están destinadas a reducir la escritura de código; estas plantillas se actualizan automáticamente cuando cambian los datos.

Dónde obtener Ember.js: Puede instalarlo a través de la NGP Ember.js escribiendo NPM instll -g ember-cli@2.15.

Características de Ember.js: Las características de Ember.js incluyen:

  • APIs que se centran en la facilidad de desarrollo.
  • Lenguajes comunes que permiten a los desarrolladores centrarse en hacer una aplicación especial.

La versión estable de Ember.js 3.0 vence el 12 de febrero del 2018, después de una versión beta el 1 de enero. Las APIs desaprobadas durante 2.x, pero aún compatibles se purgarán en Ember.js 3.x. Un complemento admitirá APIs Ember.js 2x en la línea 3.x.

JavaScript esencial: Ext JS

A diferencia de otros prominentes marcos de JavaScript, Ext JS de Sencha no es de código abierto; es un producto comercial. Es para crear aplicaciones web multiplataforma, intensivas en datos y orientadas a la empresa para múltiples factores de forma.

Dónde descargar Ext JS: El software Ext JS puede ser descargado desde la página de Sencha.

Características de Ext JS: El marco Ext JS ofrece muchos componentes como, por ejemplo, redes de datos y calendarios. Ext JS trabaja con herramientas como Sencha Architect, para el desarrollo de aplicaciones HTML5 de arrastrar y soltar, y Sencha Themer, para el diseño de aplicaciones.

Los constructores de Ext JS están reflexionando sobre hacia dónde ir a largo plazo con la arquitectura de Ext JS. Sencha había planeado lanzar Ext JS 7, ya sea a fines de este año o principios del próximo, pero esos planes están ahora en espera, debido a la adquisición de Sencha por parte de Idera. Se han llevado a cabo discusiones sobre la posible oferta de cumplimiento del último estándar ECMAScript y el uso del administrador de paquetes de NPM y el paquete de módulos de Webpack.

JavaScript esencial: jQuery

La biblioteca jQuery JavaScript presenta una API para funciones tales como manipulación de documentos HTML, manejo de eventos y animación. Bajo la jurisdicción de la Fundación JS, la biblioteca jQuery se puso a disposición por primera vez en agosto del 2006.

Dónde descargar jQuery: El software puede ser descargado desde el sitio web del proyecto jQuery.

Características de jQuery: Aunque no es un marco para crear aplicaciones, jQuery proporciona una API elegante y de bajo nivel para facilitar el trabajo con DOM a través de los navegadores. jQuery se puede usar con herramientas de creación de aplicaciones como Angular y React / Redux.

El equipo de jQuery ahora está haciendo aproximadamente dos lanzamientos al año, con solo versiones menores entre ahora y mediados del 2018. Más allá de eso, jQuery 4.0 y versiones posteriores requieren una reescritura completa con JavaScript de "próxima generación", pues necesitan una actualización del sistema de compilación. También planeado para jQuery 4 y versiones posteriores:

  • Una reescritura del marco de velocidad de jQuery, para rastrear las regresiones de rendimiento.
  • Un nuevo diseño de módulo de evento, para eliminar los ganchos de eventos especiales, evitando la necesidad de un envoltorio jquery.Event.
  • Soporte para nuevas opciones nativas como oyentes de eventos pasivos.

JavaScript esencial: Meteor

Meteor, también conocido como Meteor.js, es un marco de JavaScript que permite un desarrollo más rápido de aplicaciones para la web, los dispositivos móviles y el escritorio con menos código. Los desarrolladores pueden usar JavaScript para todos los entornos, incluidos el servidor de aplicaciones, el navegador web y el dispositivo móvil.

Dónde descargar Meteor: El software puede ser descargado desde el sitio web del proyecto Meteor.

Características de Meteor: La plataforma de Meteor, también conocida como Meteor.js, incluye tecnologías para la construcción de aplicaciones de cliente conectado reactivos, una herramienta de construcción, y un conjunto de paquetes de la comunidad de Node.js y JavaScript. Con Meteor, el servidor envía datos, no HTML, a través del cable, con el cliente que lo renderiza.

Meteor 1.6 es la próxima versión programada, con un enfoque en la actualización a Node.js 8, que le permitirá a Meteor aprovechar mejor las características de ECMAScript en el servidor, lo que debería mejorar el rendimiento de la build.

JavaScript esencial: Polymer

La biblioteca JavaScript Polymer de Google está diseñada para permitir a los desarrolladores aprovechar los componentes web, proporcionando elementos personalizados reutilizables para interactuar con los elementos integrados del navegador.

Dónde descargar Polymer: Puede instalarlo desde el gestor de paquetes Bower.

Características de Polymer: La versión 2.0, publicado en mayo, mejoró la interoperabilidad mediante la eliminación de la necesidad de utilizar Polymer.dom para la manipulación DOM. Esto facilita el uso de componentes de Polymer con otras bibliotecas y marcos.

Otras características en Polymer 2.0 incluyen:

  • Mejoras en el sistema de datos para aumentar la depuración y la propagación de datos a través de y entre elementos.
  • Clases y elementos personalizados estándar ECMASript 2015. Los métodos de la Versión 1 de Polymer se utilizan para definir elementos, en lugar de utilizar un método de fábrica. Pero el método de fábrica aún se admite a través de una capa de compatibilidad.
  • Manejo de matrices más simple.

En el tablero de dibujo está Polymer 3.0, que está en una vista previa y cambia de las importaciones de Bower y HTML a los módulos de NPM y ECMAScript 15. Las importaciones de Bower y HTML habían funcionado para un flujo de trabajo HTML basado en importaciones. Pero pusieron a Polymer fuera de la corriente principal del desarrollo web y dificultó que las personas trabjen con otros marcos o construyan herramientas.

JavaScript esencial: React

La biblioteca de Facebook React para construir IUs, ofrece vistas declarativas y está basada en componentes, con lógica de componentes escrita en JavaScript. La biblioteca React, también conocida como React.js, no admite modelos o controladores, pero otros proyectos relacionados cubren estas funciones.

Dónde descargar React: El software se puede descargar desde el sitio web del proyecto React.

Características de React: Puede utilizar la sintaxis JSX con React para describir una interfaz de usuario, con lo que permite que JSX mezcle JavaScript y HTML en un solo componente. El paso de compilación produce JavaScript puro.

Para mejorar el rendimiento, React se sometió recientemente a una reescritura, denominada Fiber y aparece en React 16, recientemente lanzado. La actualización presenta un diseño centrado en la representación asincrónica, para procesar componentes grandes. Pero la representación asíncrona en sí misma todavía no está habilitada en React; eso sucederá más adelante en la línea React 16.x.

Otras mejoras en React 16 incluyen:

  • Errores que ofrecen un seguimiento de pila de componentes para facilitar la depuración.
  • Devolución de cadenas / matrices directamente desde métodos de renderización de componentes.
  • Un nuevo renderizador más rápido del lado del servidor de transmisión.
  • Más rendimiento de aplicaciones nativas.

React también acaba de volver a obtener una licencia de patentes BSD + y MIT, después de que organizaciones como Apache Software Foundation se opusieran a los términos de la licencia. Apache temía que la licencia de patentes BSD + hiciera que su software fuera menos un "donante universal" para proyectos posteriores.

JavaScript esencial: Vue.js

Vue.js es un competidor de React, reclamando una representación más rápida. La biblioteca principal está enfocada en la capa de vista, y el marco está diseñado para ser adoptado de forma incremental.

Dónde descargar Vue.js: El software se puede descargar desde el sitio web del proyecto Vue.js.

Características de Vue.js: La representación declarativa es clave en Vue.js, utiliza una sintaxis de la plantilla para rendir datos en el DOM. El sistema de componentes Vue.js es una abstracción que permite el desarrollo de aplicaciones a gran escala compuestas de módulos que pueden ser autocontenidos y reutilizables. Los componentes en Vue.js son esencialmente una instancia de Vue con opciones predefinidas.

Vue.js 2.5 llegó en octubre del 2017, presentando una mejor integración de TypeScript. Los planes para versiones posteriores de Vue.js incluyen:

  • Facilitar a los usuarios de TypeScript el inicio de nuevos proyectos en Vue.js.
  • Una reescritura del sistema de reactividad del marco utilizando proxies.
  • Soporte para el formato de código portable WebAssembly.
  • La capacidad de aprovechar más desde componentes web.