lunes, 22 de noviembre de 2010

Mi primer aplicación iOS con GeneXus

Hace unos días se liberó la posibilidad de generar aplicaciones para dispositivos iOS usando GeneXus X Evolution 2 (beta), así que me puse a hacer alguna prueba...

Lo primero que me encontré fue la falta de documentación específica para esta plataforma. La página correspondiente en el Wiki explica que se debe bajar una aplicación desde el App Store, pero no dice nada de como configurar el modelo.

La documentación correspondiente a Android es mucho más completa, y ahí sí explica la configuración necesaria (para Android, pero sirve de ejemplo...), con lo que pude configurar el modelo.

Siguiendo este instructivo hay algunas cosas a tener en cuenta:

  1. El generador para iOS no requiere ningún tipo de emulador, por lo que la configuración es mucho más sencilla que para Android.
  2. En las preferencias correspondientes al generador para Smart Devices, se debe configurar iOS como Main Platform, porque por defecto es Android.
Esa fue toda la configuración necesaria para poder correr la aplicación en un iPhone. La aplicación muestra los datos correctamente. El único problema que tuve fue que se cierra cuando quiero agregar... pero eso es para el foro y no para el blog.

Me pareció muy bueno lo que se puede lograr en poco tiempo con este generador. La principal ventaja que tiene es la velocidad con que se pueden desarrollar las aplicaciones. Es impensable crear una aplicación y su back-end correspondiente en media hora programando a "mano". En este punto me parece difícil de superar.

La principal contra que le veo es que la aplicación generada es muy básica en cuanto a su diseño. Sería bueno (no se si estará en los planes) que se pudiera generar el proyecto XCode de la aplicación para poder realizarle modificaciones. Esto último es peligroso porque al volver a generar pierdo los cambios, pero lo veo como algo necesario al menos hasta que se pueda tener mayor control desde dentro de GeneXus.

En conclusión, creo que viene muy bien encaminado.

3 comentarios:

  1. Marcos, lo del código generado XCode, para Smart Device no hay que olvidarse que es un cliente liviano, el cual lee la declaración de cómo se debe de visualizar los datos y los muestra o permite interacción en pantalla, es un interprete genérico, no tienes el código fuente de "la pantalla X" para modificar y adaptar.

    Tocar el interprete de smart device ya me parece algo mucho más delicado, es como tocar las standard classes (gxclassr) de GeneXus, si metes mal el dedo, puede dejar de funcionar todo.

    Artech mencionó que más adelante verá de implementar la posibilidad de que se pueda "colgar" llamadas a programas nativos. El día que tengamos esa opción, para las cosas particulares podría existir una alternativa.

    ResponderEliminar
  2. David: Sí, es verdad que lo que generan no es todo el código sino solo la metadata.

    Lo que pasa es que solo con la metadata, lo que se puede personalizar de la aplicación va a ser lo que permita el intérprete...

    Lo que a mi me gustaría (ya se que es difícil), es tener todo el proyecto y poder meterle mano a eso.

    ResponderEliminar
  3. Se ve muy interesante a futuro las posibilidades que ofrecerá este nuevo generador a los desarrolladores Genexus, al parecer la plataforma "estrella" por asi decirlo será Android, habrá que ir ahorrando plata para un equipo Android (para probar los desarrollos claro) jeje.

    Saludos!

    ResponderEliminar