Ajax: El Nuevo Abordaje De Interfaz De Desarrollo De Diseño Web Del Que Todos Hablan

Recupero de este artículo sobre cómo afecta Ajax a los diseñadores web:

En los pasados años recientes, los desarrolladores debían elegir entre dos abordajes cuando construían una aplicación web.

El primer método era crear un sistema basado en pantallas con interacciones muy ricas utilizando una tecnología sofisticada y poderosa tipo Java o Flash
El método alternativo era crear un sistema basado en páginas utilizando estándares web más-fácil-de-aprender como XHTML y CSS cuyas capacidades más básicas fuerza a interacciones menos ricas.

Un nuevo abordaje tecnológico, apodado Ajax, podría ser la mezcla apropiada entre las dos.

Abordajes basados en pantallas: La opción sofisticada
Los Abordajes basados en pantallas ofrecen a los usuarios la capacidad de ingresar y manipular información en un número pequeño de pantallas que se actualizan instantáneamente con cualquier cambio enviado.
Los desarrolladores típicamente construyen esas aplicaciones, las cuales imitan la sofisticación de las aplicaciones de escritorio, con Java, Flash o una tecnología similar. La interfaz de reservas del Hotel Broadmoor, la característica Gameday de MLB.com, y la herramienta de configuración del calzado de Nike.com son algunos de buenos ejemplos del abordaje basado en pantallas.

Abordajes basados en páginas: La elección no-sofisticada
Los desarrolladores que construyen aplicaciones basadas en páginas utilizando tecnologías web estándar están forzados a lidiar con el efecto de cargar-recargar de páginas web normales. Como resultado, los usuarios que ingresan y manipular información en aplicaciones basadas en páginas deben sentarse durante el refresco de página para que esos cambios tengan lugar. La secuencia de verificación de Amazon.com, la búsqueda Google, y la secuencia de venta de eBay son ejemplos comunes del abordaje basado en página.

Si bien ambos métodos mostraron ser exitosos, cada uno tiene puntos en contra. El método basado en pantallas, por ejemplo, requiere un tiempo de desarrollo y esfuerzo significativo porque están construidos con herramientas de programación difíciles de aprender y a menudo de sistemas propietarios. Mientras que son más fáciles para construir que sus contrapartes basadas en pantallas, las metodologías basadas en página proveen una experiencia menos integrada.

Ajax: Un Abordaje A Mitad-De-Camino
Ajax esta basado es una nueva tecnología web que aúna los beneficios de los abordajes basados en pantallas y los abordajes basados en páginas. Permitiéndole más funcionalidad sofisticada utilizando estándares web fáciles-de-implementar, Ajax provee una alternativa real para crear aplicaciones web poderosas.

Jesse James Garrett de Adaptive Path acuñó el término “Ajax” en febrero de 2005, pero la tecnología que está detrás no es nueva.

Los desarrolladores que construyen interfaces Ajax aprovechan las mismas herramientas que los abordajes basados en páginas: XHTML, CSS, y JavaScript. ¿Entonces por qué Ajax repentinamente es un tópico popular?

Una razón es que varias compañías grandes incluyendo Google han creado asombrosas aplicaciones utilizando la tecnología: Google Maps, Google Gmail y Google Suggest están todos construidos utilizando Ajax.

Otra razón es la continua adopción de navegadores que cumplen con los estándares que soportan la tecnología Ajax, más notablemente Firefox, Safari, Opera e Internet Explorer 6.

Libertad de el Refresco de Página
Típicamente, cuando los usuarios ingresan información en un campo en una aplicación web basada en página, nada se hace con esa información hasta que se presiona “enviar”. Después que se presiona “enviar” la información se envía al servidor, una respuesta es devuelta, notificando al usuario el éxito o fracaso.

Durante este tiempo, el cual normalmente cambia basado en la velocidad de conexión y la cantidad de procesos que se están realizando, el usuario se sienta y espera hasta que la página se refresque.

Si bien hemos encontrado que el tiempo real de carga no conduce a la frustración del usuario por sí mismo, hemos visto que el usuario desea (y espera) una respuesta inmediata a sus consultas – recargar una página puede confundir al usuario. Por ejemplo, los usuarios a menudo encuentran difícil reconocer páginas que contienen mensajes de error, particularmente si no pueden ver dichos mensajes sin hacer avance de página.

Las aplicaciones Ajax, por otro lado, no necesitan refrescar la página completa para actualizar la información. En vez de eso, las aplicaciones Ajax pueden simplemente actualizar parte de la página en cualquier momento, dándole a los usuarios una respuesta instantánea a sus ingresos y consultas. Esto le permite a los usuarios ver continuamente con lo que están trabajando y reaccionar a cualquier cambio, error, o actualización que la interfaz les notifique.

Chequeo y guardado instantáneo del campo
Una de las características más beneficiosas que algunas veces damos por sentado en las aplicaciones de escritorio, es la capacidad para chequear instantáneamente los datos que tipeamos. En las aplicaciones de hoja de cálculo, por ejemplo, nuestro nombre ingresado en un campo numérico instantáneamente producirá un error el cual podemos solucionarlo inmediatamente.

En la web, es fácil chequear los campos en el lado del cliente utilizando Javascript. Esto produce un efecto inmediato, y replica el comportamiento de una aplicación de escritorio.
Sin embargo por razones de seguridad es necesario chequear todos los campos también del lado del servidor. Afortunadamente, Ajax permite también que esto suceda.

Interfaz De Pantalla Única
Una de las mayores razones para utilizar el abordaje basado en pantallas es la simplicidad de una interfaz de pantalla única. En el reporte del Diseño de Interfaz de Usuario de Flash, encontramos que una interfaz de pantalla única demostró ser muy útil para la gente, brindando varias ventajas sobre las aplicaciones basadas en página.

Una de las ventaja de pantallas única es que el usuario puede ver el cuadro general de la aplicación, viendo todos los pasos necesarios para completar la aplicación. Esto le da al usuario una clara idea de lo que se espera de ellos durante una transacción.

En una aplicación basada en página, ellos deberían cliquear a través de varias páginas sin saber que es lo que está más adelante

Las interfaz de pantalla única también le permite al usuario modificar y cambiar información en el orden que ellos elijan. Si quieren agregar su información de cuenta primero por ejemplo, deberían poder hacerlo. O, si quieren retroceder y cambiar algo que ya hicieron. En un interfaz de pantalla única esto es sencillo. Por otro lado, muchos abordajes basados en página fuerza a los usuarios a una secuencia específica.

Relativamente fácil de implementar
Muchos de los beneficios de Ajax refleja aquellos de las aplicaciones sofisticadas basadas en pantallas.
Sin embargo, hay un gran obstáculo para crear esas aplicaciones sofisticadas: son completos entornos de programación que requieren habilidades avanzadas de programación y un compromiso de largo plazo con tecnología propietaria. Esto hace que crear interfaces de esta forma sea caro y consuman tiempo.

Debido a que las aplicaciones Ajax están construidas utilizando nada más que estándares web actuales, ellas son relativamente sencillas de construir.

Muchos diseñadores web familiarizados con la construcción de aplicaciones basadas en página puede migrar a una interfaz a Ajax más bien rápidamente.

También, desarrolladores emprendedores de Ajax crearon bloques de construcción fáciles-de-usar que le permiten a aquello desarrolladores que no estén familiarizados con el abordaje migrar sus aplicaciones sin tener que escribir código desde cero.

Ajax: una sólida alternativa
Combinando la sofisticación de aplicaciones basadas en pantallas con la relativamente fácil-de-implementar de aplicaciones basadas en página, Ajax es un alternativa sólida para un nuevo desarrollo de interfaz.

A pesar de que nada construido con Ajax va hacer amigable para el usuario desde el comienzo, con cuidado las interfaces pueden sacar provecho de lo que nosotros sabemos y amamos de las aplicaciones de escritorio, y al mismo tiempo todavía sentír que estamos usando la maravillosa web.

Originalmente publicado: 14 de julio, 2005

por Joshua Porter
en User Interface 10 Conference como
“Using Ajax for Creating Web Applications”
UIE