martes, noviembre 15, 2011
|
Hace 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 |
9 comentarios |
Celulares / Móviles , Opinión / Análisis , Software , Videos |
Comentarios
Añadir Comentario |
en camino a la singularidad...
©2005-2024 josé c. elías
todos los derechos reservados
como compartir los artículos de eliax
Seguir a @eliax
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.