Desarrollo de Apps: Ionic la Solución Híbrida con Html5

Desarrollo de Apps: Ionic la Solución Híbrida con Html5

Es otra de las alternativas que tenemos a la hora de desarrollar Apps para múltiples plataformas, cómo lo hemos dicho antes, este tema no tiene soluciones universales y hay que analizar muy bien el proyecto y su contexto para tomar la mejor decisión.

Ionic Framework es realmente la unión de varios componentes:

  • Por una parte tenemos Cordova, su estrategia se basa en usar las capacidades que ofrece cada sistema para presentar HTML y Javascript dentro de una App, en un espacio rectangular. En Cordova este espacio ocupa toda la pantalla y en él se muestra la App que debe estar construida en HTML y Javascript. Al final esta ventana y el contenido HTML se empaquetan y se obtiene como resultado una App para cada plataforma. Esto no diferiría mucho de una página Web normal, pero Cordova ofrece bibliotecas que permiten tener acceso a muchas de las funciones nativas del dispositivo como cámara, acelerómetro, giroscopio, contactos y muchas otras, usando Javascript.
  • En Ionic la lógica se codifica en Javascript, pero se usa AngularJS como framework, esto facilita muchas tareas y Google respalda su producto, sin embargo, AngularJS puede resultar un poco complejo de dominar y no se presta bien para todo tipo de aplicación.
  • Sobre Cordova y Angulars Ionic ha contruido ngCordova que son un conjunto de extensiones que permiten acceder a más funcionalidad nativa como lectores de huellas y logeo con Oauth.
  • Ionic también ofrece una amplia selección de controles como listas, menús, botones, tabs y demás que vienen listos para usar.
  • Mediante Ionic.io también proveen servicios para las Apps, por ejemplo, Ionic Push simplifica considerablemente el envío de notificaciones Push a los usuarios, otros servicios permiten previsualizar Apps sin pasar por las tiendas de cada S.O (Incluso en iOS), analizar el comportamiento de nuestros usuarios, actualizar las Apps sobre la marcha, entre otras. El servicio aún se encuentra en beta abierta y se sabe que tendrá capas gratuitas y de pago, aunque esto aplica solo a los servicios, Ionic como tal es gratuito.

El desarrollo puede ser muy rápido dependiendo del tipo de App, algo relativamente sencillo se logrará en un tiempo mucho menor en Ionic, comparándolo con su opuesto que es el desarrollo nativo, sin embargo, al aumentar la complejidad del App la situación lentamente se invierte.

Tal vez su mayor desventaja sea la gran distancia que separará nuestro código de la máquina, a pesar del esfuerzo que los desarrolladores han puesto en optimizar su rendimiento, la diferencia va a ser notoria en ciertos escenarios, por ejemplo, trabajando con mapas. Esta distancia también implica que no tendremos acceso al 100% de las funciones nativas y por ello hablar de cosas como servicios en segundo plano de una forma totalmente trasparente es prácticamente imposible.

Esperamos que esta serie de artículos contribuya a apreciar el panorama que existe y las diferentes opciones que pueden encontrarse a la hora de desarrollar este tipo de Apps.

Deja un Comentario

CAPTCHA code
X