Tecnologías como XUL pueden acercar el desarrollo de aplicaciones web y de escritorio

Mis comienzos en la programación datan de mediados de los 80 en los que comencé con mis primeros pinitos en Basic con mi primer ordenador, un Spectrum+ de 64KB. Después de eso programé en diversos lenguajes, primero desarrollando aplicaciones que llamaríamos de consola y después aplicaciones de escritorio para las primeras versiones de Windows. En todas ellas una de las labores que más trabajo requería era siempre la elaboración del interfaz y el control de los eventos producidos por el usuario. Para facilitar estas tareas surgieron entornos como Visual Basic, pero el que a mi entender supuso de verdad un verdadero hito fue Delphi, principalmente gracias a su excelente biblioteca de componentes y al lenguaje que utilizaba, Object Pascal.

Utilicé durante bastante tiempo Delphi y otras herramientas de Borland como C++Builder, pero al cabo del tiempo mi carrera dio un giro inesperado y pasé a centrarme principalmente en el desarrollo de aplicaciones Web. Desde un principio eché de menos la facilidad de generar interfaces que me ofrecían las herramientas RAD, ni siquiera herramientas como DreamWeaver o similares eran capaces de acercarse a ellas. En una aplicación web siempre es mejor realizar los interfaces con un control exquisito del HMTL generado y unos buenos conocimientos sólidos de CSS.

Inicialmente pensaba que esto era un inconveniente que tenían las aplicaciones web, y que era más sencillo realizar interfaces de aplicaciones de escritorio, pero tras algo de tiempo trabajando en ellas consideré que la potencia en cuanto a flexibilidad que aportaba HTML con respecto a las aplicaciondes de escritorio era abismal. Sin embargo se vislumbra una situación que considero acabará acercando ambos paradigmas.

En lo que respecta a las aplicaciones Web conforme éstas crecen en complejidad, se hace necesario desarrollar manteniendo una independencia en la parte cliente entre el contenido (XTHML), el estilo (CSS) y la lógica (JavaScript) , aparte claro está, de la separación entre lógica y presentación que se da también en la parte servidora.

En cuanto a las aplicaciones de escritorio hay tecnologías como XUL de mozilla, o XAML del proyecto Avalon del futuro Windows Longhorn de Microsoft, que parecen querer adoptar la potencia de generación de interfaces que ofrecen las aplicaciones web.

Estas tecnologías permiten definir los interfaces mediante formatos XML que son leídos por un motor de renderizado que es el que finalmente monta el formulario, al estilo de como funciona un navegador web. En lo que respecta a XUL es una tecnología diseñada por los creadores de Mozilla. El propio navegador y sus componentes están desarrollados sobre ella. Una aplicación hecha con XUL permite definir la estructura del interfaz en un archivo XML, puede utilizar un archivo de estilos CSS para configurar su aspecto y puede contener código JavaScript por ejemplo de forma independiente. De esta forma conseguimos una situación muy similar a la descrita para las aplicaciones web.

Es de esperar que conforme estas tecnologías se vayan imponiendo, presumiblemente Avalon en Windows marcará la referencia con el permiso de XUL, vayan apareciendo herramientas que permitan diseñar estos interfaces de forma visual, aunque finalmente al igual que en las aplicaciones web, dispondremos de la opción de modificar los elementos que las componen con un simple editor de texto y de forma estándar, con la potencia que esto implica.

Habrá que espera a ver si esta tecnología se estandariza de alguna forma y se hace posible generar interfaces portables entre diferentes plataformas. En este aspecto XUL tiene ganado claramente mucho terreno, pero seguramente le será difícil frenar el envite de Avalon y XAML cuando llegue.

Twitter Digg Delicious Stumbleupon Technorati Facebook Email

Trackbacks/Pingbacks

  1. EsLoMas.com » Proyecto Open-Source impulsado por IBM para crear un framework AJAX - 02. Feb, 2006

    […] Si este proyecto tiene éxito, y si no, habrá algún otro que a buen seguro lo tenga, es de esperar que a corto plazo las opciones que dispongamos al desarrollar aplicaciones crezcan considerablemente, asimilándose más a las de escritorio, y diluyéndose quizás la barrera que las separa. De hecho, también hay acercamientos desde las aplicaciones de escritorio a las de web, cogiendo los puntos fuertes de éstas, buenos ejemplos son XUL y Avalon. […]