lunes, 8 de octubre de 2007

10 cosas sobre AJAX que deberías saber

1. AJAX (Asynchronous JavaScript and XML en inglés «JavaScript y XML asíncronos») es una técnica de desarrollo web que conjuga varias tecnologías que ya existían mucho antes de ser acuñado el término. AJAX no es una tecnología o un lenguaje de programación en si, citando a Félix "AJAX es una forma de programar". Las tecnologías implicadas en AJAX son:

  • XHTML o HTML y CSSS
  • DOM Document Object Model
  • XMLHttpRequest
  • XML
La última: XML como formato para intercambio de información no es imprescindible, por ejemplo en CompareBlogs no lo utilizamos con esta finalidad.

2. Para programar y que tus webs tengan funcionalidades AJAX no necesitas instalar nada en el servidor. Ésta es una confusión bastante generalizada que en parte se debe a que en el artículo original de Garrett sobre AJAX se utilizan términos como "AJAX Engine" que pueden inducir a error.

3. Lo que se consigue con AJAX es cargar una sola vez la página y dar la opción al usuario de interactuar con ella de una forma que habitualmente requeriría varios refrescos o "pantallazos": consultando, insertando, editando, guardando información... Un claro ejemplo de esto lo encontramos en Flickr, donde es posible editar el título de las fotografías sin necesidad de acceder a páginas intermedias:


4. Un proceso web diseñado con AJAX no tiene porqué ser más rápido que el mismo proceso diseñado de la forma convencional. Lo que si que es cierto es que el usuario puede tener la percepción de que todo funciona con mayor rapidez lo cual se debe en parte a que le estás permitiendo interactuar con tu aplicación web de una forma más parecida a la forma con la que interactúa con sus aplicaciones de escritorio: Word, Excel, Outlook o similares...

5. Para usar AJAX el navegador del usuario debe soportar JavaScript, algo que hacen la mayoría de los navegadores. El XML HttpRequest lo soportan todos los navegadores pero no de la misma forma con lo que es conveniente usar librerías que simpliquen su uso. En sus ejemplos prácticos Félix Diáz utilizó la última versión de XHConn (abril 2005) compatible con Apple Safari 1.2+, IE 5.0+, Mozilla 0.7.3+ (Firefox, Camino...) y Opera Browser 7.6 (parcialmente).

6. El uso de AJAX puede influir negativamente en la usabilidad de la página y en cierta manera atenta contra el diseño original de la Web de Tim Berners-Lee. La página web fue concebida como la unidad atómica de la web, permitiendo refrescos parciales o incluso remodelaciones completas del contenido sin cambiar de página estamos alterando este concepto y tal vez es demasiado pronto para valorar si se trata de una verdadera "evolución".

7. AJAX provoca alteraciones graves en la navegación. Los botones "Atrás", "Adelante", "Actualizar" o la opción de "Añadir a Favoritos" no funcionan correctamente (o cómo se espera de ellos) en webs en las que se ha hecho un uso intenso de AJAX. Con un arduo trabajo de programación se pueden mitigar estas alteraciones, tal vez Gmail es la aplicación que más cerca está de conseguirlo.




8. El ahorro de ancho de banda por si sólo no justificaría un rediseño de un web en AJAX ya que la propia caché del explorador ya evita en parte que elementos repetidos se carguen varias veces: imágenes de cabecera, iconos... etc. Que en España aun paguemos una burrada por la transferencia y el espacio de almacenamiento sería otro tema de discusión.

9. Al reducir el número de veces que se carga una página entera el número de páginas vistas de webs con AJAX se reducen. La página vista deja por tanto de ser una magnitud valorable a la hora de comparar webs con AJAX (las visitas, los usuarios únicos y otras magnitudes siguen conservando su valor). En este gráfico de Javi Moya podemos apreciar la diferencia:


10. El uso de AJAX aumenta la complejidad del código de programación de una web y por tanto alarga y encarece el proceso de desarrollo. Es necesario valorar muy bien en qué momentos debemos utilizar AJAX y en cuales optar por otras soluciones.
Bibliografía
http://www.fernandoplaza.com/2006/07/10-cosas-sobre-ajax-que-deberas-saber.asp

10 Razones para usar Ajax

Puedes programar numerosas nuevas aplicaciones enfocadas desde una visión distinta como es el caso de este paginador AJAX, si esto no te convence a leer este artículo prueba a ver 10 razones para usar AJAX.

1. Basado en los estándares abiertos
2. Usabilidad
3. Válido en cualquier plataforma y navegador
4. Beneficia las aplicaciones web
5. No es dificil su utilización
6. Compatible con Flash
7. Adoptado por los "gordos" de la tecnología web
8. Web 2.0
9. Es independiente del tipo de tecnología de servidor que se utilice
10. Mejora la estetica de la web

La manera más fácil para comprender realmente la funcionalidad de Ajax es ver cómo funciona una aplicación web con Ajax y cómo una sin Ajax.

Bibliografía

http://www.wikilearning.com/capitulo.php?id_contenido=21461&order=1

martes, 7 de agosto de 2007

Uso de Ajax

Dónde usar y dónde evitar AJAX

Leo | 03-12-05 | Ver posts relacionados

Como continuación a lo que comentaba hace un par de días sobre el uso y el abuso de AJAX con el que nos encontramos en esta nueva era de internet, les recomiendo un artículo de Alex Bosworth en el que comenta en que situaciones el uso de AJAX es realmente útil y en cuáles no:

Casos en los que es recomendable usar AJAX:

  • Interaccion a través de formularios
  • Navegación jerárquica por nodos (o estilo árbol)
  • Comunicación rápida entre usuarios
  • Votaciones, encuestas, valoraciones, etc.
  • Filtrado y manipulación de datos o resultados de búsqueda
  • Autocompletado de campos de texto usados comunmente

Casos en los que es recomendable evitar AJAX:

  • Envíos a través de formularios simples
  • Búsquedas
  • Navegación básica
  • Reemplazar grandes cantidades de texto
  • Manipulación de la interfaz
  • Widgets sin sentido

Más detalles en el artículo completo: 10 Places You Must Use Ajax.