En el proceso de desarrollo de programas AJAX, muchas personas cometerán algunos errores comunes. Algunos errores pueden poner en peligro las funciones y el rendimiento del programa AJAX, provocando la pérdida de todas las ventajas del programa AJAX. Aquí el autor le presentará los siete pecados capitales a los que debe prestar atención al desarrollar programas AJAX.
AJAX es algo bueno, permite a los desarrolladores crear aplicaciones más dinámicas de forma más rápida y eficiente. Pero también tiene sus propios defectos.
A primera vista, podría parecer que un poco de sentido común evitaría estos escollos y, hasta cierto punto, así es. Pero en comparación con su rival DHTML, la arquitectura del programa AJAX es completamente diferente. No importa cuánto sentido común tenga en sus esfuerzos de desarrollo de aplicaciones, debe aprender de las lecciones de quienes le precedieron. En este artículo, nos referimos a estos errores como los "Siete pecados capitales", pero no son representativos de todos los errores.
Antes de conocer los siete errores fatales en el desarrollo de AJAX, echemos un vistazo a siete errores menos graves. Todo el mundo comete estos errores. Haz una búsqueda en Google y verás lo comunes que son estos errores.
siete delitos menores
1. Abusar del botón Atrás: Mucha gente comete este error y el botón Atrás se ha convertido en algo imprescindible en muchos programas de experiencia web. Muchos desarrolladores novatos de AJAX agregan el botón Atrás a sus programas AJAX por varias razones, pero descubren que el botón Atrás afecta la funcionalidad del programa. Esto se debe principalmente a que Javascript no es un lenguaje de programación muy fácil de usar. En segundo lugar, los desarrolladores deben volver a aprender las ideas de desarrollo de AJAX.
Para aquellos nuevos en AJAX, no es fácil aceptar la idea de que el botón Atrás no es una buena solución. Cuando estemos en el punto de actualización de la página, o cuando necesitemos usar la función "Deshacer", podemos considerar la "tecla Atrás". Pero debe pensarlo dos veces antes de codificar; de lo contrario, es fácil que se produzcan actualizaciones repetidas.
2. No informar al usuario de los resultados de la operación. Parte de cómo funciona AJAX es que no utiliza el cargador de interfaz de usuario web habitual. Por lo tanto, es necesario diseñar algunas señales visuales para que los usuarios comprendan lo que está sucediendo.
3. Enlaces pasados por alto: este también es un error estándar de AJAX: omitir un enlace URL que los usuarios externos pueden cortar y pegar. Todos hemos copiado una URL y se la hemos enviado a otra persona. Cuando usamos AJAX, solo podemos proporcionar enlaces a otros mediante entrada manual pura. ¿Por qué? Porque en las aplicaciones AJAX, el servidor no proporciona esta página generada automáticamente en Javascript. No pase por alto esta característica más común en las aplicaciones web que podrían interesar a sus usuarios. Tómese un momento para proporcionarle al usuario la dirección URL, ya que el servidor no la proporciona.
4. Utilice control de contenido en lugar de control de página: si busca control de contenido dinámico, el avance de la aplicación AJAX en el método tradicional de interacción cliente-servidor puede ser un gran regalo para usted. Sin embargo, esto también tiene sus propios inconvenientes: si bien tienes un gran control sobre la reescritura del contenido en una ubicación precisa de la página para ajustar la experiencia de interacción del usuario, puedes terminar con una página incompleta.
En muchos casos, nos concentramos en procesar una determinada parte de la página y olvidamos que el servidor no actualizará la página. Esto puede generar páginas desordenadas y una mala experiencia de usuario: cuando ven la página, es posible que estén viendo una página desactualizada. Esté atento a toda la página; asegúrese de que cualquier página con contenido dinámico esté actualizada.
5. Arañas cansadas: la ventaja de AJAX radica en la gran cantidad de texto que se puede proporcionar a la página sin reinstalar; la desventaja de AJAX también radica en la gran cantidad de texto que se puede proporcionar a la página sin reinstalar; Si una aplicación está diseñada para ser compatible con los motores de búsqueda, deberías poder imaginar lo que podría pasar. No importa lo que suceda en la página, asegúrese de poner mucho texto sólido en la parte superior y deje que las arañas se diviertan.
6. Caracteres confusos: AJAX no puede admitir múltiples conjuntos de caracteres. Esto no es una limitación de vida o muerte, pero olvidarlo puede generar problemas reales. El conjunto de caracteres más básico es UTF-8. No importa qué juego de caracteres envíe su Javascript, no olvide codificarlo correctamente y configurar el juego de caracteres del lado del servidor según el contenido.
7. No se proporcionan mensajes para los usuarios que no admiten Javascript; algunos navegadores no admiten Javascript y estos usuarios no pueden entender lo que está sucediendo. Por favor dales algunos consejos.
Los anteriores son algunos errores que son fáciles de encontrar. Los problemas reales se pasan por alto fácilmente.
siete pecados capitales
1. Permita que la memoria se desborde: cualquiera que haya estado involucrado en el trabajo de desarrollo durante mucho tiempo sabe qué son las referencias circulares y comprende el daño que traen a la gestión de la memoria. Javascript utilizado por AJAX es un lenguaje de gestión de memoria. En otras palabras, Javascript tiene una función de recopilación de paquetes incorporada, por lo que puede extraer variables que ya no se utilizan en las rutas de referencia y reasignar la memoria utilizada por estas variables.
Cualquiera que haya trabajado en desarrollo durante mucho tiempo sabe qué son las referencias circulares y comprende los peligros que conllevan para la gestión de la memoria. Javascript utilizado por AJAX es un lenguaje de gestión de memoria. En otras palabras, Javascript tiene una función de recopilación de paquetes incorporada, por lo que puede extraer variables que ya no se utilizan en las rutas de referencia y reasignar la memoria utilizada por estas variables.
Ahora, aquí viene el problema: en el modelo de objetos de archivo, otros elementos presentes en el árbol pueden hacer referencia a cualquier nodo DOM en el árbol de archivos, ¡independientemente de si otros objetos hacen referencia a él! Por lo tanto, cualquier objeto marcado en el recopilador de paquetes como referenciado por un nodo DOM debe ser cero en esta dirección; de lo contrario, su memoria permanecerá asignada.
2. No entiendo lo que significa "asincrónico": la palabra asincrónico puede fácilmente hacer que los usuarios que no están familiarizados con ella se sientan nerviosos. Pero si la aplicación web que diseña para estos usuarios es una aplicación de escritorio, no se molestarán. Este es un punto de diseño crucial. La mayoría de las aplicaciones web funcionan de manera muy similar a sus contrapartes de escritorio. Pero en las aplicaciones web, los usuarios esperan que esta cualidad ilusoria los lleve a ser completamente diferentes.
Los usuarios tienen prejuicios y expectativas muy diferentes cuando tratan con navegadores web que con aplicaciones de escritorio. Entonces, si bien las respuestas frecuentes entre la página y el servidor serían agradables y eficientes, con la página revisándose simultáneamente, marearía al usuario. Por lo tanto, debe seguir dos reglas y considerar cada cambio que entre en el alcance visual del usuario: si la actualización no es urgente para el usuario, haga que la actualización sea suave y no se transfiera. La interacción de la aplicación es muy importante, por lo que las actualizaciones deben ser claras y obvias.
3. Hacer que el servidor sea ciego: la reducción de la comunicación entre el cliente y el servidor es un gran problema, lo que antes no era el caso. En el pasado, la aplicación del lado del servidor lo sabía todo y podía verlo todo: cada excepción, cada recarga, cada evento podía verse y registrarse y, por supuesto, el servidor también sabía lo que estaba sucediendo en el cliente, porque el servidor Lo que se muestra en la pantalla se grabará.
Este no es el caso en las aplicaciones AJAX. Cuando ocurren eventos, estos eventos son independientes del servidor, es decir, cuando hay un problema en el cliente, el servidor no lo sabe de inmediato. Descubra y registre eventos y excepciones del lado del cliente en una ubicación que permita al servidor rastrear problemas que requieren intervención.
4. Utilice GET para ser vago: la función de GET es recuperar datos; la función de POST es configurar GET. No utilice GET de forma inapropiada y ni siquiera lo intente si cree que es inofensivo. Las acciones GET cambian de estado y los enlaces que cambian de estado pueden confundir a los usuarios; la mayoría cree que los enlaces son para navegación, no para funcionalidad.
5. Sin supervisión de tipos de datos: Javascript no forma parte del marco .NET. Aunque esto es un poco triste, ilustra un problema que podemos encontrar: asegurarnos de que Javascript comprenda los tipos de datos en la plataforma en la que se ejecuta, y viceversa para .NET u otro. Puede haber varias conversiones y deberás realizarlas una por una. Por ejemplo, la biblioteca Ajax.NET Pro proporciona convertidores que convierten notaciones de objetos .NET y Javascript.
6. Algunos programas no se pueden cerrar: la generación dinámica de contenido sin actualizar la página sería muy mala si no hay una hora de cierre. ¿Cuántas páginas web has visto que sean más largas que Hansard del Congreso? Si la página web se extiende indefinidamente, sin duda será una pesadilla para los usuarios. Basta pensar en lo que pensarán los usuarios de las aplicaciones que nunca se detienen. Haga que su aplicación web sea dinámica, pero dentro de los límites de lo factible.
7. Haga que Javascript y DOM sean independientes entre sí; recuerde que AJAX se basa en la estructura "Modelo-Vista-Controlador", tómelo en serio. Javascript pertenece a la capa modelo, DOM pertenece a la capa visual y el controlador es el consultor matrimonial que los conecta. Asegúrese de que sus archivos web sean independientes de Javascript (para que sean más útiles para los usuarios que no admiten Javascript), a menos que el contenido en sí solo sea significativo para los usuarios que usan Javascript. En este caso, utilice Javascript para crear el contenido.