Click acá para ir directamente al contenido

A la hora de desarrollar una herramienta o servicio para los usuarios, hay que definir cuál será la mejor manera para que ellos puedan acceder y usar la aplicación. Existen dos maneras de desarrollar esta app: nativa o web. ¿Cuándo se debe optar por una u otra?

A favor de la aplicación web

Dedo sobre la pantalla de un smartphone

El principal argumento a favor de una aplicación web es de compatibilidad: solo hay que desarrollar una sola aplicación que correrá en todos los dispositivos que cuenten con un navegador web. Esto asegura la consistencia y acceso universal con menos esfuerzo en su desarrollo.

Si bien lo anterior es cierto en términos generales, las aplicaciones web tienen muchas limitaciones y pueden funcionar con errores dependiendo de diversas variables:

  • El comportamiento es variable, a veces funcionan mal o simplemente no funcionan (dependiendo del sistema operativo, navegador utilizado, tipo de dispositivo, etc).
  • Las aplicaciones web no funcionan si no se tiene una buena conexión a Internet: Corren en el navegador, y dependen de que haya Internet para cargar los elementos necesarios. Las aplicaciones nativas en cambio son capaces de seguir siendo útiles aun si no tenemos una conexión a Internet.
  • Tratar de emular el comportamiento de las aplicaciones nativas en la web es complejo: Esto ha llevado a utilizar herramientas que ralentizan las páginas web y que podrían ser mucho más simples si se utilizaran alternativas.

Las aplicaciones web son útiles cuando se trata de implementar herramientas sencillas y simples, que no requieren de elementos complejos que puedan generar problemas en la diversidad de dispositivos, sistemas operativos, navegadores y otros que existen actualmente en el mercado.

A favor de una aplicación nativa

Mano sosteniendo un smartphone

Los navegadores, que es donde operan las aplicaciones web, no están al tanto de todas las cosas que nuestros computadores y dispositivos móviles hacen, lo que las hace más limitadas y le da la ventaja a las apps nativas. Sin embargo, ¿cuándo y por qué una aplicación nativa es mejor que una aplicación Web?

Si la aplicación requiere de alguna de las siguientes capacidades para funcionar, se debe optar por una app nativa:

  • Usar funciones del dispositivo: Para usar la cámara, micrófono, validación de pago móvil, acceso a los gestos o notificaciones, necesitas ser "nativo". Además, las aplicaciones nativas tienen acceso al procesador y almacenamiento local del dispositivo.
  • La información desplegada en la aplicación debe ser persistente: Esto significa que el usuario tiene acceso a ciertas informaciones incluso sin una conexión a Internet. A pesar de que hoy en día el acceso a Internet pareciera estar disponible en todos los lugares, esto no es universal y se pueden dar muchos casos donde no tengamos conexión.

De esta manera, las posibilidades de las aplicaciones nativas son mucho más amplias que las que tiene una aplicación web. Pueden hacer más cosas y de forma más eficiente.

No obstante, las desventajas de las aplicaciones nativas son básicamente las siguientes:

  • Hay que desarrollar una app por cada sistema operativo donde se quiera que la app funcione. Para móviles es principalmente iOS y Android, pero podría haber otros (Windows Phone).
  • Las apps deben ser mantenidas regularmente para ponerse al día con los cambios que van desarrollándose para cada sistema operativo.

¿Por qué las aplicaciones nativas le "ganan" a las aplicaciones Web?

Las apps web no pueden emular perfectamente lo nativo. Las apps nativas hablan directamente con el sistema operativo, mientras las aplicaciones web hablan con el navegador, que ha su vez habla con el sistema operativo. Esto quiere decir que las apps web deben pasar una capa adicional (un intermediario) que hace que sean más lentas y torpes que las apps nativas.

Emular aplicaciones móviles lleva a una mala experiencia de usuario (UX) (o, al menos, a una UX que es claramente una copia pobre de una UX nativa), y que perjudica la página web por todas las librerías y frameworks que pensamos "necesitamos" para hacer que la herramienta funcione.

Conclusiones

Las aplicaciones web no deberían tratar de competir con las aplicaciones nativas, menos tratar de convertirse o simular ser aplicaciones nativas. Más bien debieran concentrarse en sus puntos fuertes:

  • Tener alcance, al poder operar en cualquier sistema operativo a través del navegador
  • Usar URLs, que son increíblemente útiles y no funcionan en un ambiente nativo
  • Están libres de descargar una app: Si una persona quiere ver la información de una tienda (teléfono, lugar, etc..) los usuarios irán a su web porque no quieren pasar por la molestia de tener que descargar e instalar la app nativa.

Finalmente la decisión de si usar una app web o una nativa depende de la respuesta a una pregunta simple:

¿El usuario quiere tener el icono de la aplicación en la pantalla de inicio del dispositivo?

  • Sí. (Aplicación Nativa)
  • No. (Aplicación Web)

La mayoría de los negocios no tienen mucha oportunidad para terminar en la pantalla de inicio del usuario. Es altamente posible que les baste con una aplicación web, pero no una aplicación web que emule una app nativa sin propósito alguno.

Comencemos a trabajar juntos

Cotiza tu proyecto con nosotros. Podemos acompañarte en el proceso y llevar tus ideas a la web.

Contáctanos