¿Qué es AJAX y para que sirve? (Parte 1)

Desde que me dedico a Desarrollar Sistemas Webs mucha gente me ha preguntado como demonios funciona AJAX, ¿Qué es?, ¿Qué hace? y si ¿Es necesario utilizarlo?, preguntas que yo mismo me hice antes de conocer como funcionaba pues era acérrimo programador estilo “reloader” porque me parecía una eternidad el tiempo que tomaba actualizar un documento HTML de manera dinámica a tráves de una orden “callback”, quizás era que en aquel entonces el conjunto de técnicas que describen o forman lo que es AJAX no estaban tan avanzadas o no existían la gran cantidad de librerías que facilitaran toda esa parafernalia (jquery, prototipe, extjs, etc…) provocando que cada quién hiciese sus propias fuentes sin enfocare en la optimización y velocidad… solo en el que funcione.

Entonces, ¿Qué es AJAX? si definimos AJAX por sus letras quiere decir “Asynchronous JavaScript And XML” pero seguimos sin entender que es, bueno… definición “for dummies”, AJAX no es mas que la transferencia de información utilizando el lenguaje Javascript para controlar procedimiento de transferencia, esta información fluye en 2 canales independientemente de que va y que viene (Específicamente es una conversación a destiempo entre el servidor y el cliente) y finalmente el formato en el cual la información se transmite “usualmente” es en XML… que simplemente es una manera de organizar la información de manera inteligible o mas fácil de entender a simple vista.

Claro que el formato XML no es el único que se utiliza, también se puede usar texto simple para enviar la información o se codifica o formatea usando otros estándares como JSON (mi preferido).

¿Qué hace?, simplemente actualiza una porción de nuestra pagina web sin necesidad de cargar el código, atributos gráficos e imágenes de nuevo. ¿Es necesario?, en ciertos casos es necesario, digamos por ejemplo “maps.google.com” sin la habilidad AJAX no se podrían dibujar mapas o crear aplicaciones que parezcan como si estuviesen corriendo localmente (EXT JS), AJAX esta aquí para quedarse pero como programador pienso que debería existir algo que unificara todas esas tecnologías en una sola, siendo necesario la creación de una herramienta que se encargue de tomar todas estas grandes técnicas y enfocarlas en un solo lenguaje o un gran conjunto para dedicarnos a tocar los procesos mas complejos o de funcionamiento interno y no perder tanto tiempo pendiente de atributos necios o que efectos darle cuando se esconda una tablita en forma de grid.

¿Que opinan ustedes?

Anuncios

4 comentarios en “¿Qué es AJAX y para que sirve? (Parte 1)

  1. Bueno te comento que muchos confunden ajax con ajah, entiendase la “h” como html, es decir tu defines ajax como asíncronas con respuestas en XML, json, etc, pero muchos lo hacen solo vía html, no esta mal, pero es importante tener en cuenta eso, sobre todo cuando tienes aplicaciones bastante grandes y quieres enriquecerla mucho con el ajax que llega en puntos a ser inaccesible.

    Muchos se fajan hacer aplicaciones bonitas con utilizando ajax con bastante interactividad, pero cuando va a lo funcional es un aplicación llena de agujeros de seguridad producto de que el ajax del lado cliente tiene como aliado al javascript algo que no se controla desde el servidor.

    Esto solo lo dejo como para estar pendiente que mas allá de interactividad hay muchos aspectos a tomar en cuenta cuando se utiliza tecnologías de este tipo…

  2. Bueno, yo aún no me he metido en el mundo de la programación de paginas web, pero como veo solicitudes de programadores con experiencia en Ajax, quize buscar y encontré este sitio. Está bueno el ejemplo. ¡Ajax! ya entendí….Está página me deja con líneas blancas y negras en la vista….Saludos. Fran de Venezuela.

    1. Hola Julio, creo que tus preguntas son un poco extensas para dedicarme a explicarlas en este sistema de comentarios, si necesitas aprender ajax para aplicaciones crud te dejo un atajo, ahora estoy escribiendo en otro blog donde se habla explicitamente sobre Prado Framework que es un framework escrito en php que te permite crear esos sistemas de manera fácil y sencilla, orientado a objetos menejados a través de eventos, muy parecido a .asp pero sin lo malo… te dejo algunos enlaces para que te documentes sobre el tema. Saludos.

      Twitter: @sicutdeux @pradolabs

      pradolabs.blogspot.com

Los comentarios están cerrados.