Son flexibles, funcionan en dispositivos con distintos sistemas operativos, aprovechan las posibilidades que ofrece el desarrollo web y los recursos del teléfono y requieren menores costos y tiempo para su creación.
Por eso, las aplicaciones híbridas se están volviendo la respuesta para diversos desarrolladores que quieren poner su producto en las manos de múltiples usuarios.
Aunque están hechas con recursos como HTML, JavaScript, CSS y otros utilizados en las páginas web actuales, no se visualizan desde un navegador, sino que le hacen sentir al usuario que se trata de una aplicación nativa; es decir, una escrita en el lenguaje del sistema operativo desde el que se está utilizando.
Para lograrlo, este tipo de aplicaciones se crean dentro de un contenedor. “Existen mecanismos de comunicación entre la parte web y el lado nativo, que saben interpretar acciones desde web y traducirlas a lo que se quiere hacer con los recursos del teléfono”, explica Ronald Hernández, gerente de la unidad móvil de Avantica.
Por eso, este tipo de aplicaciones, a diferencia de las que son 100% web, sí tienen acceso a recursos del teléfono, como la cámara o el GPS, por ejemplo.
Pero no a todos. “A veces se tienen limitaciones respecto del acceso a recursos del sistema. Es muy fácil pensar que se puede hacer todo tipo apps y luego darse cuenta de que hay cierto soporte que no está disponible o que la experiencia de usuario no se compara a una app nativa”, advierte Hernández.
Desarrollos nativos
Las aplicaciones nativas tienen acceso a todos los recursos del teléfono y logran aprovechar todo el potencial que el sistema operativo y el dispositivo ofrecen.
Además, suelen contar con un mejor desempeño que aplicaciones de otro tipo. Por eso, la mayoría de los juegos son creados bajo esta modalidad.
“Desde la perspectiva del usuario también ofrecen ventajas: cuando buscan la aplicación, la encuentran en la tienda respectiva; cuando la abren, arranca inmediatamente; cuando la usan, tiene un desempeño veloz y una apariencia acorde con la plataforma; cuando se debe actualizar, la aplicación le avisa...”, señalan los especialistas de Salesforce en su blog para desarrolladores developerforce.com .
El problema es que cada sistema operativo utiliza un lenguaje distinto por lo que hacer un desarrollo nativo para varias plataforma implica reescribir el código casi por completo para cada nuevo sistema operativo en el que se desee utilizar la aplicación.
“No solo hay que saber el lenguaje de desarrollo, sino que también hay que conocer bastante bien las bibliotecas de desarrollo para utilizar features del dispositivo”, explica Hernández.
Por eso, los desarrollos nativos suelen requerir más tiempo y más recursos que los que son web o híbridos.
Desarrollos web
Las aplicaciones web son una página o una serie de páginas diseñadas para ser vistas desde un dispositivo por medio de un browser .
Aunque los lenguajes web actuales permiten realizar desarrollos atractivos, estas aplicaciones no tienen acceso a los recursos del aparato y su aspecto no necesariamente es acorde al look & feel del dispositivo.
Tampoco pueden enviarle actualizaciones al usuario, ni funcionar cuando no hay conexión a Internet. Adicionalmente, no se distribuyen en las tiendas de aplicaciones, que son los principales canales de masificación.
Todo eso hace más difícil lograr que el usuario siga acudiendo a la aplicación con frecuencia. Además, algunos consideran que las web apps no son tan seguras como las aplicaciones nativas.
No obstante, son los desarrollos menos costosos de hacer y tienen la ventaja de que, por ser contenido en la web, son indexables y fáciles de encontrar en ese canal de información desde cualquier dispositivo.
“Esto puede ser un gran beneficio para algunas aplicaciones, como las de compras o las de lectura de noticias, por ejemplo”, explican en developerforce.com
¿Cómo escoger?
Antes de tomar una decisión, lo que recomienda Doug Seven, vicepresidente ejecutivo de la desarrolladora de software Telerik, es valorar la experiencia de usuario que logrará con cada modalidad.
Cada empresa deberá valorar los recursos que necesita del dispositivo y las posibilidades que desean brindar a sus clientes, así como el presupuesto que tiene disponible antes de elegir las respectivas aplicaciones.