Desarrollo Web: Nuevas Tecnologias para 2014

Este nuevo año 2014 va a ser increíblemente interesante en cuanto a desarrollo web se refiere. Tenemos a nuestro alcance lo que creo que serán las 5 tecnologías más interesantes de cara a 2014 para plataforma web.

  1. asm.js: rendimiento casi nativo en la web.

  2. Parallel.js: paralelizar código JavaScript

  3. ECMAScript 6: evolucionando el lenguaje.

  4. Web Components: una nueva infraestructura para crear componentes web.

  5. CSS Grid layout: creación de GUIs de manera casi nativa.

2014_lenguajes_programacion

1. asm.js: rendimiento casi nativo en la web.

En un intento por hacer que JavaScript funcione cada vez más rápido, Mozilla ha desarrollado asm.js. Es una subconjunto simplificado de JavaScript que permitirá que las aplicaciones JavaScript consigan correr a la misma velocidad que aplicaciones nativas escritas en C o C++.

2. Parallel.js: paralelizar código JavaScript.

Es un proyecto que, como suele pasar dentro del mundo de software libre, nación con otro nombre “River Trail”. Parallel.js permite hacer multiprocesamiento en JavaScript utilizando webworkers.

JavaScript es rápido no hay duda, pero no disponía de toda la capacidad de multiprocesamiento del que podemos disfrutar hoy en día en nuestros ordenadores con esta nueva librería esto se soluciona.

3. ECMAScript 6: evolucionando el lenguaje.

ECMAScript 6 JavaScript es la nueva versión del lenguaje JavaScript que estará estandarizada aproximadamente a finales de 2014.

Algunos motores ya comienzan a soportar nuevas funciones de JavaScript puedes echar un vistazo a esta tabla de compatibilidad.

Esta nueva versión del lenguaje tendrá muchas novedades. Para mi y después de estar trabajando con Google DART, creo que la programación asíncrona utilizando generators y promises será una gran novedad. Aunque parte de ello ya se está utilizando.

Los Módulos que nos permitirán organizar y estructurar mejor nuestro código además de unificar la forma en que las miles de librerías existentes en internet hacen esto mismo.

También recibiremos nuevas estructuras de datos para nuestro trabajo (Map, Set), iterators, listas comprimidas (Comprehensions)

Otras funciones que creo pueden resultarte de interés son estas:

  • block-scoped variables.

  • Valores por defecto para los parámetros de funciones.

  • Named parameters en funciones.

  • Clases, Subclases y Módulos.

  • Interpolación de strings para hacer string templating.

4. Web Components: una nueva infraestructura para crear componentes web.

Con el desarrollo del Shadow Dom ahora es posible crear nuestros propios componentes web.

Actualmente es muy habitual cuando cargas una página web encontrar CSS, JavaScript propio de la página web, pero también podrás ver que cargan videos de YouTube o Vimeo, también verás los plugins de Social Media de Twitter, Facebook, etc. Cada uno de estos elementos tendrá sus propios estilos y sus propios JavaScript.

Esta carga adicional de estilos y de scripts podría incluso colisionar con los nuestros, gracias a los web components esto quedaría solucionado porque cada componente web que tú crees con sus etiquetas HTML, estilos y javascript se puede encapsular para facilitar su distribución, su uso y permitirnos hacer un código más reutilizable.

5. CSS Grid Layout: creación de GUIs casi nativa.

Este módulo CSS define un sistema de rejilla bidimensional optimizado para crear interfaces de usuario.

Con esto conseguiremos salvar un agujero increíblemente grande que existía entre el desarrollo para plataformas web y el que tenemos actualmente para desarrollo en plataforma desktop o mobile.

IE ya soporta CSS Grid Layout y en FireFox y Chrome podremos utilizarlo en breve.

Puedes echar un vistazo a CSS Grid Layout aquí.

Artículo escrito por 

………………………………………………….

Referencias: http://www.2ality.com/2014/01/web-platform-2014.html?utm_source=html5weekly&utm_medium=email

http://asmjs.org/spec/latest/

http://adambom.github.io/parallel.js/

http://arstechnica.com/information-technology/2013/05/native-level-performance-on-the-web-a-brief-examination-of-asm-js/

https://speakerdeck.com/rauschma/ecmascript-6-whats-next-for-javascript

http://kangax.github.io/es5-compat-table/es6/

http://www.w3.org/TR/2012/WD-css3-grid-layout-20120322/