texto:   A-   A+
eliax

GeneXus for Smart Devices, para aplicaciones móviles multi-plataforma
eliax id: 8974 josé elías en nov 15, 2011 a las 12:12 AM ( 00:12 horas)
GeneXusHace unas semanas atrás ofrecí una charla en Uruguay sobre Tendencias y el Futuro del Software, en el evento XXI Encuentro GeneXus, y aproveché la oportunidad para ver las últimas novedades de la empresa ArTech, y una en particular me llamó la atención: GeneXus for Smart Devices.

GeneXus for Smart Devices es una extensión de GeneXus, la herramienta que hace un año atrás me dejó bastante impresionado. Recomiendo lean el artículo del año pasado para entender mejor la herramienta y de que rol juega esta extensión en el ecosistema de GeneXus.

Para el que no sepa, en resumen GeneXus es una herramienta que te permite crear programas que después pueden ser desplegados en cualquier combinación de plataforma (Java, Windows, Oracle, MySQL, .Net, Linux, etc), lo que hace de la herramienta una meta-herramienta de programación, en donde uno no programa un lenguaje en específico, sino que a un más alto nivel, asistido por una librería de patrones que junto con algoritmos de Inteligencia Artificial optimizan el software generado (en serio, léanse el artículo anterior, en particular si tienen lo más mínimo que ver con el mundo del software).

Habiendo dicho eso, GeneXus for Smart Devices extiende a GeneXus para que genere código para la nueva tendencia del momento: Dispositivos móviles, y cuando hablamos de "móviles" hablamos en sentido general. De salida esta extensión soporta iPhone, iPod Touch, iPad, Android, y Blackberry (que entre todas cubren sobre el 97% del mercado hoy día), con posibles otras plataformas a soportarse en el futuro.

La idea de esta extensión es que se creen interfaces que consuman los servicios ofrecidos por aplicaciones construídas con GeneXus, lo que significa por ejemplo que si ya utilizaron previamente a GeneXus para algún sistema empresarial (digamos, un ERP para alguna institución financiera), que ahora se hace relativamente trivial adaptar la aplicación para que los usuarios de tal aplicación la consuman por dispositivos móviles por Internet.

Y he ahí el gran poder del ecosistema de GeneXus: Con unos cuantos clics de ratón, y unos pocos días de trabajo, se puede transformar toda una aplicación GeneXus en una versión consumible por móviles, en vez de iniciar desde cero como ocurre con muchas otras plataformas. Esto de paso es una garantía hacia usuarios de GeneXus de que con miras hacia el futuro sus usuarios podrán contar con herramientas que tomen ventaja de nuevas tendencias, con un mínimo de esfuerzo.

Noten que debo aclarar que GeneXus no es una herramienta tradicional, y que requiere de un mindset (cambio de mentalidad) diferente a la hora de desarrollar aplicaciones, pero para los que se tomen el tiempo de aprender el nuevo paradigma que propone, las recompensas pueden ser inmensas.

Solo imaginen por ejemplo que desarrollaron un sistema complejo para un banco, y que la gerencia les pida que adapten la aplicación a iPhone, Android y iPad... En escenarios tradicionales esto es para llorar, pues hablamos de tener que aprender a programar en Objective-C para iOS, y la versión particular de Java para Android, lo que significa mucho tiempo de aprendizaje, o un alto costo pagando nuevos técnicos que dominen esas tecnologías.

Pero con esta herramienta, el programador ni siquiera tiene que saber las peculiaridades de cada plataforma: Simplemente le indica a GeneXus que desea generar el código para tales plataformas, y este lo genera, y punto. Trabajo realizado en pocas horas o días.

Noten que aunque por el momento este generador para Smart Devices fue diseñado para extender aplicaciones de GeneXus (es decir, componentes GeneXus en el servidor, más componentes que consumen esos recursos en el dispositivo móvil), que es posible crear aplicaciones independientes bastante interesantes, con la única limitante de que necesitan estar conectadas a Internet para consumir servicios de algún lugar vía APIs tipo REST, cosa que hoy día es casi la norma en la mayoría de aplicaciones móviles.

Como ejemplo del poder de todo esto, los invito a que entren a la tienda de aplicaciones de Apple para el iPhone/iPad/iPodTouch, y/o a la tienda de aplicaciones de Android, y descarguen las siguientes aplicaciones creadas con esta herramienta:

En iOS (iPhone, iPad y iPod Touch):
Cartelera de cines

Aplicación para un equipo de Uruguay (Nacional)

Aplicación para seguir las eliminatorias sudamericanas

Aplicación para seguir el peso (en breve saldrá una nueva actualización)

En Android:
The Democratic Governors Association (DGA)

Control de Peso

Greentizen (para cuidar el medio ambiente)

Cartelera de cines (es la misma de arriba pero para Android)

Algo que se preguntarán es que tan genéricas son las aplicaciones generadas, es decir ¿toman ventaja de las particularidades de cada plataforma? Y la respuesta es que si, pudiendo uno tener acceso a sensores (como el de GPS), cámara (para por ejemplo subir fotos), mapas, e incluso integración con portales sociales como Twitter. Varios de estos elementos lo podrán notar es la aplicaciones de ejemplo que les listo arriba.

Es importante también notar que esta herramienta no crea el equivalente a una máquina virtual o runtime para después ejecutar código genérico. La herramienta genera código 100% nativo y optimizado para cada plataforma, lo que hace que la aplicaciones generadas sean tan ágiles como cualquier otra aplicación hecha "a mano".

En resumen, si están interesados en una herramienta que les permita ser muy productivos, con poco código, y que los aisle de las particularidades de cada una de las plataformas móviles del mercado, de paso permitiéndoles sacar soluciones muy rápidamente, les recomiendo seriamente que le den una ojeada a esta herramienta.

Página oficial de GeneXus

Video a continuación sobre cómo se crean aplicaciones con esta herramienta (enlace YouTube)...


autor: josé elías

Comentarios

  • Eliax hace mucho que ya conozco Genexus, mucho antes que leyera de el en tu blog, y desde un principio me llamo mucho la atención, descargue el demo y hice el ejercicio que ofrecían en la pagina web y me gusto mucho la forma fácil, rápida de desarrollar y el resultado final, pero cuando investigue sobre los costos, solo de aprendizaje eran costosos y imposible encontrarlos en rep. y luego habría que adquirir una licencia para el uso del software, aunque si ya le vas a sacar el jugo a esta herramienta creo que el costo de la licencia no seria problema. Pero si ArTech ofreciera cursos o manuales para uno aprender y licencias para estudio, comprar ya la licencia para trabar comercialmente seria algo mas viable.

    • FRM, puedes entrar a http://training.genexus.com donde están los videos de los cursos, gratuitos para aprender de tu casa o de donde sea. Puedes acompañar los estudios con la versión específica para estudios y gratuita también, que está en http://www.genexus.com/trail junto con tutoriales gratuitos también.
      (La versión trial sin embargo no incluye generación para smart devices, pero sí te permitirá realizar aplicaciones de prueba de concepto para Web )

      • Gracias Armin no se cuanto tiempo tiene esto disponible, pero esta muy interesante no sabia que ya lo tenian disponible ;)

  • Yo fui a la página dispuesto a bajar la demo y probarlo. Sin embargo me encontré con que si bien genera programas multiplataforma, él mismo funciona en una sola plataforma... y no es la que uso habitualmente a pesar de tener una liciencia totalmente legal.

    Tal vez sea bueno, pero no he llegado a probarlo por ese motivo.

  • Hola José, el link a la app de las eliminatorias quedó apuntando a la de Cartelera. El link correcto es http://itunes.apple.com/us/app/camino-a-brasil-2014/id474820402?ls=1&mt=8
    Saludos, Armin

  • pues yo no le veo nada nuevo a esto... ya existen muchos paradigmas similares para construir aplicaciones en Internet, empresas como SalesForce o Pengower llevan años haciendo esto mismo y a unos costes de licencia mucho menores

    • Sabes que GeneXus existe desde hace mas de 20 años ?
      Seguramente bastantes años antes que SalesForce o Pengower o Clarion o powerBuilder etc etc
      Tienes que informarte bien antes de emitir una opinión

  • Será interesante ver que tan facil puede ser, aunque le tengo mala espina a este tipo de aplicaciones, pero bien por ellos y por los que se benefician de este tipo de herramientas.

Añadir Comentario

tu nombre
tu email
(opcional)
web personal
(opcional)
en respuesta a...
comentario de caracteres máximo
4 + 3 = requerido (control anti-SPAM)
¿De qué color es el cielo?: requerido (control anti-SPAM)
 

"welcome to internet kid"

por "Santiago Moran Labat" en mar 20, 2014


en camino a la singularidad...

©2005-2024 josé c. elías
todos los derechos reservados
como compartir los artículos de eliax