Aplicaciones móviles

El mundo cambia, y han pasado ya muchos años desde que Bill Gates soñaba con meter un ordenador en cada casa. Ahora, cada persona lleva al menos un pequeño ordenador encima. Esto ha supuesto que los hábitos cambien, y aproximadamente el 90% de los usuarios navega o realiza sus gestiones a través del teléfono, de hecho, estudios recientes nos hablan de que los jóvenes manejan sus teléfonos con total soltura, pero ante un ordenador de escritorio se ven limitados. Es por ello, que la demanda de aplicaciones web, y aplicaciones móviles han crecido tanto en los últimos años.

De las herramientas que usamos para la construcción de aplicaciones web os hemos hablado en otros artículos de este blog, pero hoy queremos hablaros de aplicaciones móviles nativas.

El problema

Llegados a este punto nos encontramos con que tenemos 2 sistemas distintos IOs (Apple) y Android, lo cual significaba que si querías construir una aplicación compatible con los 2 dispositivos, tenías que crear 2 aplicaciones, cada una en un lenguaje distinto y necesitabas programadores especializados en cada uno de estos lenguajes. Es por ello que nacieron herramientas como “Cordova” capaces de convertir una aplicación web en una aplicación nativa.

¿Cómo se consigue esto?

Capacitor diagram

Dicho de manera sencilla, nuestra aplicación correrá sobre un navegador ligero que se comunicará con el dispositivo por medio de complementos o plugins para aprovechar al máximo las características nativas del dispositivo.

Basado en Cordova nació Ionic, un completo framework que nos provee una serie de componentes, y plugins para comunicarnos con el hardware del dispositivo y conseguir el potencial de una aplicación nativa.

Actualmente, Ionic nos permite trabajar con los Frameworks React, Angular y Vue, lo que supone una enorme ventaja para empresas como la nuestra, acostumbrada a usar estos Frameworks.

La ventaja de una aplicación nativa reside en el potencial de poder usar las distintas interfaces o medios del dispositivo como son la cámara, GPS, Bluetooth, sistema de archivos, notificaciones push, etc. Por este motivo, Ionic nos provee de diferentes plugins anteriormente a través de Cordova y ahora con Capacitor (una mejora de cordova mantenida por el equipo de Ionic) que nos permiten aprovechar todo este potencial.

Pero no solo eso, además Ionic nos permite crear PWA (Progresive Web Apps) que básicamente son aplicaciones a medio camino entre aplicaciones nativas y webs, ya que permiten ser "instaladas" en el dispositivo (móvil o incluso de escritorio) y además pueden correr en segundo plano gracias a los service-workers.

Alternativas

Existen diferentes alternativas a Ionic como son React Native, Xamarin, Flutter, etc. Pero Ionic es la opción que más se ajusta a nuestra forma de trabajar y cubre todas nuestras necesidades, por ello es nuestra elegida para este cometido.