Los lenguajes y tecnologías que intervienen en AJAX
Podremos encontrar más información sobre Document
Object Model en la dirección web www.w3.org/DOM.
XMLHttpRequest
Como su nombre lo indica, XMLHttpRequest es una interfaz que
permite realizar peticiones a servidores web mediante el protocolo
HTTP (y también utilizando el protocolo HTTPS).
Además de XML, el formato de transferencia puede ser codificado
en texto plano, HTML y JSON. XMLHttpRequest es uno de los
elementos fundamentales para permitir la transferencia asincrónica
de datos de AJAX.
Esta especificación fue creada por Microsoft y se incorporó en
Internet Explorer a partir de la versión 5 (usando ActiveX).
Posteriormente fue incorporada por los navegadores Mozilla, Safari
y Opera, entre otros. Al ser un navegador más joven, Google Chrome lo
utiliza desde el momento de su nacimiento.
Para conocer más sobre esta especificación, podemos ingresar en el
sitio web que se encuentra en www.w3.org/TR/XMLHttpRequest.
XMLHttpRequest Level 2 se encuentra actualmente en Draft la vemos
en: http://www.w3.org/TR/XMLHttpRequest2.
DOM
Bajo el nombre de DOM (Document Object Model) se define una
interfaz que permite la representación del documento en el modelo
de objetos. De esta manera, es posible acceder, por ejemplo, a los
elementos contenidos en un documento HTML o XML con la posibilidad
de manipularlos (crearlos, borrarlos o modificarlos).
En palabras sencillas, DOM nos permite tener acceso a un documento
(que puede ser una página web) representado en una estructura de
objetos. Es posible modificar estos objetos, cambiarles sus atributos
o bien agregarles nuevos. El uso de DOM es una de las características
principales que le da mayor funcionalidad a AJAX.
Utilizando JavaScript, es posible acceder de diferentes formas
directamente al elemento, como por ejemplo, mediante su id con
getElementById() o a través de su etiqueta con getElementsByTagName().
Vale decir que al acceder a los elementos del documento mediante
DOM, podremos manipular su contenido y también sus atributos. Así
podremos percibir cambios en la página sin recargarla por completo.
JSON
JavaScript Object Notation (JSON) es la denominación en inglés que
recibe el formato de notación literal de objetos, el cual es utilizado
principalmente para el intercambio de datos en AJAX.
En la actualidad, se emplea mucho en aquellos proyectos donde, con
frecuencia, se produce un gran nivel de flujo de datos asíncronos entre
cliente/servidor, ya que permite tener la información organizada y con
facilidad de acceso para ser manipulada.
Entre estas ventajas se encuentra la simplicidad con la que permite
interactuar con arrays y el uso de objetos. Por sus características, en
especial su simpleza y eficiencia, JSON se ha convertido en una muy
interesante alternativa a XML, como opción de codificación de datos en
AJAX. Pero también resulta importante destacar que, en un mismo
desarrollo, es posible utilizar tanto la alternativa para el manejo con
XML con XMLHttpRequest, como la solución que nos ofrece JSON. Es
importante tener en cuenta que la mayoría de los navegadores
modernos cuenta con soporte nativo para JSON.
Entre los lenguajes que pueden trabajar con JSON, encontramos
JavaScript, Java, PHP, Perl y Ruby, entre otros.
Si estamos interesados en saber más sobre las opciones y la
forma de trabajar con JSON, podemos ingresar en el sitio web que se
encuentra en la dirección www.json.org/json-es.html.
RIA
Rich Internet Applications (RIA) es el término con que se denomina a
las aplicaciones de Internet enriquecidas. En pocas palabras, este tipo
de aplicaciones tienen características similares a las de escritorio, pero
corren directamente en el navegador.
Aunque existen alternativas, debemos tener en cuenta que la ventaja
de desarrollar RIA con AJAX es que el usuario no necesita instalar
software adicional en su equipo. Tan solo necesita contar con un
navegador moderno y una buena conexión a Internet; de esta forma
estará listo para correr la aplicación web. Este tipo de aplicaciones, surgidas a partir de la Web 2.0, son cada
vez más potentes y, por lo tanto, ofrecen soluciones muy eficaces para
hacer frente a distintos tipos de necesidades.
Frameworks
El concepto de framework es muy usual en el ámbito de programación
y ha cobrado gran importancia en lo que se refiere a desarrollo web.
Debemos saber que, en líneas generales, un framework es un
fragmento de código que cuenta con soluciones para enfrentar una
necesidad de desarrollo en particular, resolviendo cuestiones de bajo
nivel para simplificar la labor del programador que lo utiliza.
En AJAX, encontramos varias librerías muy interesantes que
simplifican nuestro trabajo con esta tecnología.
Entre las más importantes, podemos mencionar a jQuery (que se
encuentra en la dirección http://jquery.com), Prototype (www.prototypejs.org) y MooTools (http://mootools.net), entre otras.
No hay comentarios