Aplicaciones de Escritorio en el Navegador Web

Hoy es día es claro distinguir una aplicación de escritorio a una aplicación web. La primera necesita instalarse localmente, necesita contar con librerías para su funcionamiento, y sólo puedo acceder a ella desde otra computadora usando algún software de conexión remota, lo cual no es algo sencillo para el usuario casual.

La segunda presenta ventajas interesantes: se instala en un servidor, por lo que cualquier usuario con acceso a dicho servidor podrá ejecutar la aplicación web, y si el servidor se encuentra en la nube, prácticamente cualquier usuario de Internet podría usar la aplicación, sin necesidad de instalar nada de manera local y sin importar que sistema operativo esté usando… basta contar con un navegador web.

Ahora bien, ¿se imaginan ejecutar Gimp en una desktopnotebooknetbooktouchpad sin necesidad de tenerlo instalado, o escuchar algún streaming de audio con Rhythmbox con tu iPhone, o ejecutar OpenOfficeen un iPad? Suena loco… pero pronto podría ser una realidad.

Alexander Larsson, un desarrollador sueco, ha estado trabajando en la creación de un Back-End con HTML5para GTK+ 3.0 (la base de Gnome 3). Antes de que les explique, vean el siguiente video:

[vimeo]http://vimeo.com/17132064[/vimeo]

En el video se puede observar como Alexander ha logrado satisfactoriamente portar aplicaciones construidas bajo GTK+ para que sean ejecutadas nativamente dentro de Firefox 4, gracias a la magia del elementoCanvas de HTML5.

¿Cómo funciona esta maravilla?

¿Realmente quieren saberlo? Ok, pero primero aguanten la respiración.

Cada ventana principal de una aplicación GTK+ es mapeada e un elemento Canvas deHTML5, y el contenido de las ventanas es actualizado por streaming de comandos sobre XMLHttpRequest, usando codificacion gzip para comprimir los datos. Los datos de las ventanas son mostradas como copias de regiones (al realizar scroll) y diferencias entre imágenes. Así mismo, las imágenes son enviadas como datos (URIs de datos PNG sin compresión). La entrada es obtenida a través de eventos DOM y enviada al servidor por websockets.

¡Ya pueden volver a respirar! Si lo analizamos bien, el proceso no es tan complicado, y hay que reconocer que es muy ingenioso. Ojalá Alexander se anime a patentar su idea, antes de que los grandes devoradores de patentes lo hagan primero (ustedes saben de quienes hablo).

Por cierto, por el momento sólo funciona bajo Firefox 4, pero podría ser migrado a otros navegadores gracias a los websockets.

WOW, ¡quiero probarlo!

El proyecto ya se encuentra disponible en Git, bajo el nombre clave Broadway.

Notas Finales

¿Qué pienso de todo ésto? ¡Una absoluta revolución! Tanto del lado del usuario, como de los desarrolladores de aplicaciones. Incluso, aunque por el momento se está usando GTK+, no creo que sea tan complicado hacer lo propio con otros frameworks, como Qt.

Si el proyecto prospera, y alcanza una madurez sólida, estaríamos prácticamente entrando a una era de ubicuidad, donde podremos usar aplicaciones de WindowsMacOS X en Linux, o viceversa, en cualquier combinación imaginable.

Fuente: Alexander Larsson. Via LinuxersPhoronix.

Extraido de Gespadas.com

Salir de la versión móvil