RAP mobile: Write once, run anywhere para plataformas móviles
RAP mobile es una solución de la empresa Eclipsesource que permite ejecutar interfaces de usuario construidas con Java y con SWT tanto en Android como en iOS. Su lema es "Write once, run anywhere", y se refieren a la posibilidad de crear aplicaciones nativas para ambas plataformas de terminales móviles empleando una única base de código Java. Aquí tenéis un video de una demo de varios controles ejecutándose en Androide:
RAP mobile: Android Inputs Demo from RAP-Team on Vimeo.
Y aquí teneis la misma demo pero ejecutándose en iOS:
RAP mobile: iOS Inputs Demo from RAP-Team on Vimeo.
Para conseguir esto mantienen una representación de la interfaz gráfica de usuario tanto en un servidor Java EE como en el propio terminal móvil. Cuando hay un cambio en la interfaz o bien en el terminal porque el usuario ha realizado alguna interacción, o bien en el servidor en respuesta a un evento, emplea JSON para transferir entre ambos el cambio.
Ahora mismo la tecnología se encuentra en estado de "Developer preview", y si estamos interesados en usarla podemos solicitarlo a través de este formulario.
El principal problema que yo veo con esta tecnología es que, especialmente si la red no es muy rápida, la interfaz de usuario puede tardar en responder a las interacciones. ¿Que pintados tiene RAP mobile?
Reader Comments (6)
Es la moda actual, pero ninguno de estos frameworks me convences si de desarrollar aplicaciones de mucho consumo de datos se refiere. La mejor que he visto es QuickConnectFamily, que es un paquetito bastante completo para desarrollo multiplataforma. Pero hasta hoy, ni el mercado de los gadgets está listo para aplicaciones de grandes prestaciones con estos frameworks, para proyectos pequeños y medianos tal vez, no así para la inminente era empresarial móvil.
efrigerio tienes "algo" de razón salvo en el hecho de que ItsNat es brutalmente web hasta el punto de que básicamente es Dynamic HTML en el servidor y no trata de ocultar la tecnología web subyacente como suele ser habitual en herramientas tipo RAP, que no digo que no esté mal pero introduce un nivel de abstracción (con la correspondiente brutal rigidez) que puede ser inaceptable en un montón de proyectos.
ItsNat cree brutalmente en la "libertad de diseño", pero mejor que te lo diga otro:
"Always use a xhtml template for rendering components instead of dynamically creating elements on Java. Easy to debug, easy to design GUI this way."
En mi día a día dentro de mis opciones "posibles" a mi me gustaría usar Vaadin (que tiene muchas más similitudes conceptuales con RAP que ItsNat) pero me tengo que comer las ganas con patatas por esa cosa que se llama "libertad de diseño".
Ojala en tu día a día te encuentres con clientes que te den "libertad plena de diseño", si no es así cuida muy mucho las herramientas que eliges y su nivel de abstracción no vayas a dedicar muchas más horas intentando encajar la herramienta a los requisitos visuales y funcionales que a hacer lo que te piden.
Ay, he eliminado el comentario de efrigerio POR ERROR, juro que el gestor de contenidos en el que corre ahora javaHispano me engañó haciendome creer que el comentario de Merkel estaba duplicado 3 veces o bien es que me he equivocado pensando que el botón de eliminar se refería al mensaje de abajo en vez de al de arriba (lo más probable), PERDON.
Este era el comentario de efrigerio:
"Conceptualmente, me recuerda a José María (ItsNat).
Un saludo,"
Algo me había imaginado..
:o)
@jmarranz
Está claro que hay diferencias, (y obsesivo del control como soy, tampoco son de mi agrado).
Pero desde lo conceptual (en términos de SPI céntrico en el servidor) me recordó a ItsNat.
Y muchas de las charlas y debates que hemos tenido son aplicables a esta herramienta, en términos de performance, tiempo de respuesta, escalabilidad y demás.
Un saludo.
Como dicen, me recuerda bastante a Vaadin, que es lo que yo suelo usar.
Es la moda actual, pero ninguno de estos frameworks me convences si de desarrollar aplicaciones de mucho consumo de datos se refiere. La mejor que he visto es QuickConnectFamily, que es un paquetito bastante completo para desarrollo multiplataforma. Pero hasta hoy, ni el mercado de los gadgets está listo para aplicaciones de grandes prestaciones con estos frameworks, para proyectos pequeños y medianos tal vez, no así para la inminente era empresarial móvil.