Programación de app's móviles

El creciente uso de los dispositivos móviles (smartphone) y tabletas táctiles (tablet), y el gran éxito que tienen sus portales de aplicaciones, han creado la necesidad en muchas empresas de expandirse por estas nuevas vías o incluso, la creación de nuevos negocios basados en esta tecnología.

En este sentido, las posibilidades que ofrecemos a la hora de plantear un proyecto de app son tres:

Apps nativas, desarrolladas específicamente para el sistema operativo de destino
Web apps, accesibles utilizando el navegador web
Apps HTML5/JS/API, multiplataforma con Apache Cordoba + Angular, con acceso a determinadas funcionalidades del sistema
Apps nativas multiplataforma, con React Native con acceso a funcionalidades del sistema.

La principal diferencia radica en que las App nativas se desarrollan específicamente por el sistema operativo de destino, por ejemplo Android o iOS. En este sentido, las apps nativas permiten aprovechar al máximo las ventajas de cada plataforma, ofreciendo de este modo una mayor fluidez y un rendimiento óptimo, así como la posibilidad de utilizar todas sus funcionalidades, como GPS, cámara etc. Hay que tener en cuenta a la hora de realizar el desarrollo que una app que quiera ser publicada por varios sistemas requerirá desarrollos independientes. De ahí deriva la principal ventaja de las apps HTML5 y web apps.

Las webapp son aplicaciones que se pueden consultar mediante cualquier navegador web de cualquier dispositivo que soporte la tecnología HTML5 / CSS3. Esta tecnología permite el uso de caché de datos, animaciones complejas, funcionalidades para obtener ubicación y adaptación al entorno de visualización (responsive design). Además, en caso de requerir actualizaciones, éstas serán visibles para el usuario al acceder a la app, sin necesidad de realizar descargas manuales. Hay que tener en cuenta que estas aplicaciones no formarán parte de las tiendas de Apps y no permitirán utilizar funcionalidades específicas del dispositivo, ofreciendo además, un rendimiento siempre menor a las aplicaciones nativas.

Las Apps HTML5/JS/API, son creadas con la tecnología Apache Cordova, y habitualmente trabajamos con Angular para crear la interfaz de usuario. Son un paso intermedio entre aplicaciones web y aplicaciones nativas. Este tipo de soluciones se pueden publicar en las tiendas de aplicaciones Google Play y Apple Store y ahorran costos de desarrollos específicos para cada plataforma. Además, en determinados casos, se puede contemplar disponer de una versión webapp consultable directamente desde el navegador, sin necesidad de instalar la app. Obviamente, solo en casos donde no sea necesario trabajar con funcionalidades específicas del dispositivo.

Por último, las aplicaciones creadas con React Native son la última tendencia, el código creado es multiplataforma, pero en lugar de tratarse de HTML (web), es un código que una vez compilado crea aplicaciones nativas en iOS y Android. Ofrece bibliotecas que permiten acceder a la mayoría de funcionalidades del dispositivo, por lo que esta se convierte en una de las opciones más adecuadas a la hora de plantear un proyecto multiplataforma, siempre y cuando no sea necesario también disponer de una versión web.

Al disponer de un panorama tan diverso, gilsys ofrece el asesoramiento necesario para desarrollar cada aplicación siguiendo el sistema que más se adecue a las necesidades y previsiones de cada cliente.

Tecnologías