Ya hace un tiempo que he estado trabajando diseñando interfaces de sistemas Web utilizando el famoso Ajax y creo que es tiempo de compartir algunas conclusiones personales que he obtenido.
Es más difícil de diseñar
Si es así, y no es que no se pueda hacer es solo que lleva mucho más tiempo y es algo que todos los participantes del proyecto deben tener en cuenta.
Es más difícil de explicar
En el método tradicional era fácil solo había que hacer unos cuantos wireframes y diagramas de navegación con su descripción y todo el mundo entendía.
Utilizar Ajax implica que hay eventos que ocurren en la misma página y que seguramente involucren un cambio, como animaciones o cosas que aparecen y desaparecen, para estos casos además de los entregables anteriores hay que realizar Storyboards y descripciones más detalladas que expliquen como funciona la página.
Es más difícil de programar
La página ya no es solamente un elemento que “dibuja” lo que le dice el servidor, la página ahora tiene inteligencia y puede encargarse de ciertos procesos lógicos de la aplicación.
Esto obviamente hace que la página sea más difícil de programar, pero lo más complicado es definir cuales procesos se harán en la página y cuales en el servidor. Por un lado si pasamos procesos a la página el tiempo de respuesta para el usuario puede ser más rápida que si se consulta en el servidor, pero por el otro lado estaremos aumentando el peso de la página y dependiendo de la capacidad de proceso del cliente, cosa que en Internet desconocemos.
Lograr este equilibrio es unos de los mayores desafíos de desarrollar un sistema con Ajax.
Los browsers no están preparados, aún.
Los browsers fueron hechos originalmente para funcionar bajo el modelo tradicional de la Web y se les hicieron adaptaciones para funcionar en el modelo de Ajax, las herramientas que tienen para soportar lo que Ajax solicita son limitadas.
Se necesita de un Maquetador/Programador o de un Programador/Maquetador
Con esto quiero decir que para armar estas páginas se necesita de un perfil que escasea, un maquetador que sepa javascript no es suficiente, debe tener más conocimientos de programación avanzada y conseguir un programador que se “rebaje” a saber html y javascript también es complicado.
Parece, pero no es
Si, parece que se pueden hacer aplicaciones con las funcionalidades de las aplicaciones cliente-servidor, pero no.
Que se puedan hacer ventanas flotantes, live search, animaciones, etc. no significa que funcionen de la misma manera, hay ciertas cosas que no se pueden, o no son recomendables de hacer.
Javascript no es lo suficientemente potente
Para las animaciones los drag and drop y esas cosas javascript si sirve, donde se queda un poco corto es en el tema de parsear xml, cambiar formatos, etc. aunque claro esas cosas no se deberían hacer en el cliente pero hay veces que no queda otra.
Ajax es una palabra demasiado fácil
Si Jesee James Gareth le hubieran dejado el antiguo nombre XMLHttpRequest a los encargados de venta nunca les hubiera interesado y no lo estarían repitiendo como si vendieran limpiador en polvo en una feria y además XMLHttpRequest suena a complicado y le tendrían más miedo o por lo menos respeto.
Es fantástico!!!
La cantidad de cosas que se pueden hacer y lo mucho que mejora la experiencia del usuario en muchos aspectos es genial, creo que es un gran avance para los sistemas Web y que aun le queda mucho camino por recorrer.
Y como siempre
Las herramientas hay que usarlas cuando el usuario, la tarea y el contexto lo ameriten, no tenemos por que cargar con una pesada caja de herramientas si solo queremos clavar un clavo.
stan 10 de Marzo a las 12:00 pm