Publicada la versión 0.2 de ItsNat, Natural AJAX
"Me llena de orgullo y satisfacción" publicar la nueva versión 0.2 del framework web AJAX ItsNat.
Aparte de la corrección de algunos errores, mejoras internas y algunos cambios en la API, las aportaciones más importantes de esta versión son:
- La licencia cambia a la versión definitiva AGPL v3 publicada por la GNU
- Nueva opción de "server-sent events" (eventos enviados desde el servidor): los eventos creados desde el servidor ahora también pueden ser procesados directamente por el DOM del servidor sin necesidad de navegador siguiendo el estándar W3C DOM Events incluyendo "capturing" y "bubbling". Esta característica en la línea de la filosofía "el navegador es el servidor" es única en el mundo de los frameworks web.
El código es prácticamente idéntico al modo "con navegador" sólo que ahora no es necesario sincronizar, no hay navegador ni red, no hay nuevos hilos y los eventos al ser procesados en el servidor directamente se ejecutan muchísmo más rápido y de forma siempre síncrona (sin los problemas típicos de testear una aplicación AJAX asíncrona), lo cual introduce una nueva técnica de test funcional y de la vista (vista-servidor, la vista-cliente es un clon).
- Aplicación de los server-sent events a la definición de bookmarks/permalinks en el Feature Showcase. Se ha añadido un ejemplo en donde se muestra cómo definir "bookmarks" en una aplicación AJAX con ItsNat con tres métodos diferentes: método directo y con los dos modos de "server-sent events". En los casos de técnicas "server-sent events" lo que se hace es simular que el usuario ha pulsado los elementos de la vista necesarios para llevar a la aplicación al estado inicial deseado.
Los casos de los métodos directo y server-sent sin browser son adecuados para hacer una aplicación AJAX "Google friendly" pues no necesitan que se ejecute JavaScript en el cliente. En el caso del Feature Showcase, ahora Google o cualquier robot de buscador puede recorrer todo el árbol de características, incluidos "tabs", a través de los permalinks que se han añadido a todas las opciones.
- Añadido un parámetro AJAX timeout a todos los métodos de registro de listeners, para cortar un posible request AJAX que tarda demasiado.
- Métodos "unrender" a las interfaces renderer para liberar recursos asociados al markup antes de que se elimine. El ejemplo "Free List Compound" del Feature Showcase usa este métodp.
- Los eventos ContinueEvent, UserEvent, TimerEvent ahora son extensiones de eventos W3C DOM, derivan de la interface W3C Event y son recibidos por listeners de tipo W3C EventListener, las interfaces específicas han sido eliminadas. Ahora también pueden ser disparados desde el servidor como los demás eventos DOM (excepto TimerEvent).
- Ahora se detecta si ha cambiado algún template anidado, si ha cambiado los padres son recargados en cadena.
- Se ha añadido a la web un tutorial, es básicamente el ejemplo de aplicación "core" del manual. Sirve para hacerse una idea de todo lo que se necesita para hacer una sencilla aplicación AJAX con ItsNat. Bueno, es sencilla con ItsNat, con otro tipo de tecnologías puede ser un infierno.
Link directo a la zona de descarga
Bueno en realidad no he sido yo quien ha publicado la nueva versión, la ha traído Papa Noel en cooperación con Los Reyes Magos (han creado una "joint venture").
Espero vuestros comentarios y/o sugerencias.
Feliz Navidad.
Reader Comments