Universidad Nacional Autónoma de México
Dirección General de Servicios de Cómputo Académico
Año 7 Núm. 74, Publicación Mensual, 27 de Noviembre de 2008

ARTÍCULOS

 

Año 5, Número 45, Enero de 2006

AJAX: Asynchronous JavaScript And XML

Mario Alberto Arredondo Guzmán

 

Existen muchas herramientas que los desarrolladores de aplicaciones web utilizan al realizar su trabajo; por ejemplo, el lenguaje JavaScript permite controlar tareas, como el clic a un botón o a una liga, que se generan en el navegador de los usuarios que visitan una página web; mientras que otros lenguajes o plataformas como PHP (Hypertext Preprocessor), ASP (Active Software Professionals), JSP (Java Server Pages), entre otros, procesan la información en el servidor y regresan el resultado del proceso a la máquina cliente para desplegarlo en el navegador del usuario.

En este sentido, cada vez que en el navegador del usuario se genera una petición al servidor y se despliega la información resultante, se debe redibujar toda la página. Si tomamos en cuenta las imágenes, tablas, listas, menús y, en general, todo lo que conforma la página web de inicio antes de efectuar una petición, y la que aparece al actualizar la página, nos podemos dar cuenta de que es “inútil” borrarla cuando en un 90% se redibujará tal y como estaba antes de hacer cualquier petición. Dicho procedimiento se puede optimizar a través de AJAX (Asynchronous JavaScript And XML, por sus siglas en inglés).

A la letra ‘A’ del acrónimo AJAX le corresponde la palabra Asynchronous (asíncrono). Al hacer las peticiones de esta manera, es decir de forma asíncrona, podemos mostrar la información que el servidor retorna, sólo en las secciones de la página en donde nos interesa mostrarla, sin necesidad de actualizarla por completo.

AJAX es una combinación de JavaScript, que trabaja del lado del cliente, y de lenguajes que procesan la información en el servidor y la entregan como una cadena de texto o en un archivo XML, lo que proporciona una gran posibilidad de uso a los datos, en conjunto con las peticiones asíncronas arriba mencionadas.

Podemos decir entonces que la combinación de estas tecnologías y técnicas de programación es lo que define a AJAX.

AJAX permite desarrollar aplicaciones web mucho más atractivas para el usuario, puesto que son más ágiles y de respuesta inmediata. El número de clics que un usuario debe dar para terminar por ejemplo, un registro en línea, disminuye de manera significativa, aunado a que el número de páginas que se despliegan para concluir un proceso también se reduce, lo que permite optimizar el tiempo que el usuario invierte en realizar cualquier actividad.

Sin embargo, las desventajas que podría tener AJAX son:

  • La parte medular de su funcionamiento está basada en código JavaScript, lo que no garantiza que el navegador del usuario de la página web lo soporte.
  • El uso común de los botones “adelante” y “atrás” del navegador web se modifica de alguna manera, lo que puede confundir al usuario cuando no tiene presente esta situación al desarrollar los sistemas.
  • Aunque es difícil encontrar información bibliográfica relacionada con este tema, en Internet existen sitios como el de Mozilla Developer http://developer.mozilla.org/en/docs/AJAX:
    Getting_Started
    que pueden ser de mucha ayuda para comenzar a entender de forma práctica el funcionamiento de AJAX. Algunos ejemplos de sitios que emplean AJAX son:

http://www.netvibes.com/

http://www.gmail.com/

http://www.aypwip.org/webnote

Inicio | Contacto |