Voy a describir los 3 frameworks mas importantes que escuche/vi/use/lei para la creacion de aplicaciones RIA (Rich Internet Application):
Flex: "El framework" para trabajar con Flash, porque.... es de adobe :P.
http://flex.org/
Si alguna vez quisieron incluir una funcionalidad en flash para que se comunique con la capa de negocio, utilicen Flex. Es simple, es rapido, permite mapear via JSon obejtos en la capa de presentacion y en la logica. Soporta feeds constantes, conexiones en segundo plano, mapeo de objetos y todo lo que tienen estos frameworks.
Hay otros frameworks (como OpenLaslo) que poseen una funcionalidad similar y ofrecen tambien el manejo por javascript, peor no le llegan ni a los talones a las capacidades que Flex ofrece.
Se puede bajar el entorno de desarrollo de la pagina, que es un eclipse preparado completamente para trabajar con Flex.
Desventajas:
- El truco? Necesitas tener si o si el plugin flash instalado en tu navegador para ver una aplicacion hecha en... Flash :P duhhhh! El 80% de los usuarios de internet lo poseen, por lo que no veo cual es la limitacion en hacer una aplicacion con esto.
- No es completamente abierto, hay algunas restricciones en los protocolos de comunicacion. Si bien uno puede optar por utilizar JSON o XML, hay otro propietario de Flex (creo que binario) que es mucho mas rapido.
- Hay que codificar una pequeña cantidad de objetos del lado de la presentacion para que puedan ser maniupulados en el flash (en script de flash) que se mapean contra nuestro modelo.
Ventajas:
- Es mas rapido que una aplicacion Ajax en el sentido que una vez descargado el componente Flash, ya no vuelve a solicitarse, por lo que la navegacion es mucho mas dinamica.
- El poder de Flash!
GWT: OHHHH poderoso Google! :P
http://code.google.com/webtoolkit/
Si hay algo que me gusta de este framework es el soporte que google hace por detras. Una vez tuvimos un inconveniente, realizamos un post y se abrio el bug al toque. En el siguiente release ya estaba incluida la mejora :D
Otra biblioteca de este estilo (pero con ideas mas tradicionales) son IceFaces y algunos componentes de JSF.
Ventajas:
- GWT permite realizar una aplicacion Ajax Style, pudiendo debuggearla en tiempo de desarrollo con editores Java (como el Eclipse), lo que ayuda a descubrir inconvenientes, que de otra manera deberiamos ver en Javascript (cosa muy dificil).
- Una vez que se deploya, se convierte todo (excepto los servicios de nuestro lado que brindan informacion) en un HTML tunneado para ser mas pequeño y veloz, por lo que es mas liviano que el resto de los frameworks (hay forma de hacer que genere un HTML "Human readable", pero llegado a ese punto estamos en problemas, no es la idea).
- Viste google? gmail? bueno, todo eso lo podes hacer con este framework.
- El soporte es google.
Desventajas:
- En tiempo de desarrollo se utiliza un tomcat y una consola asociada al framework.
- El Codigo generado es inentendible.
- Es dificil hacer el deploy junto con una aplicacion ya existente, por tener un ambiente de desarrollo y empaquetado particular, pero con un par de vueltas sale andando.
Yahoo UI: Yahoo, no estas muerto!!!... todavia ¬¬
http://developer.yahoo.com/yui/
Esta es la que menos conozco.
Yahoo UI es una biblioteca Javascript completisima para el desarrollo de aplicaciones RIA. Otra similar pero que no le llega ni a los talones es Dojo.
Ventaja:
- Es Javascript, lo que tenga del lado del server, no importa.
- Es liviana y simple. Ataca a problemas puntuales de presentacion.
Desventaja:
- No es un framework cross side, asi que hay que tener bien diferenciadas las capas y esto implica mas desarrollo del lado del servidor.
Que lo disfruten!
Saludos.
No hay comentarios:
Publicar un comentario