App nativa
Las apps nativas se desarrollan en el lenguaje nativo de cada sistema operativo, lo que también determina sus parámetros y características. En el caso de las apps nativas, más que una web, sería algo similar a cuando se instala un programa en un ordenador, solo que esta vez se hace en un dispositivo móvil.
Una de las ventajas que presentan las apps nativas es que garantizan la experiencia del usuario y el pleno acceso e integración con las funciones de hardware del dispositivo, aprovechando al máximo sus capacidades. Además, este tipo de aplicaciones permiten tiempos de respuestas mucho más cortos y se puedan utilizar sin conexión a internet. Al contrario que con el resto de tipo de apps, con las nativas prima la calidad y la experiencia del usuario, pudiendo aprovechar todas las posibilidades del dispositivo. Como inconveniente, requieren mayor inversión en el desarrollo y el mantenimiento de 2 fuentes de código.
App híbrida
Se construye de forma similar a una página web, pero se utilizan a través de un navegador integrado dentro de una aplicación nativa. Las apps híbridas permiten aprovechar el uso de algunas de las funcionalidades del dispositivo móvil y simular la experiencia de usuario como si se tratase de una app nativa, ya que se adaptan al dispositivo como tal. Este tipo de apps es recomendable para proyectos efímeros y requiere menor inversión en desarrollo al mantener una sola fuente de código.
Uno de los inconvenientes que presenta este tipo de app es que se ve afectada la experiencia de usuario, limitando su velocidad y la integración de los dispositivos hardware, ya que accede a éstos mediante plugins.
Web app
Se trata de una web diseñada para su perfecta visualización en dispositivos móviles, ya que se trata de una web embebida en una aplicación que funciona como navegador. En este caso, tiene una apariencia de app pero las mismas limitaciones que si se tratase de una página web.
Una web app permite utilizar responsive web design, lo que quiere decir que se adapta a todos los dispositivos. Este tipo de aplicación móvil es la más sencilla de desarrollar y la más económica, ya que únicamente se crea una única aplicación, por lo que es recomendable para proyectos de bajo presupuesto. Como inconvenientes, tiene peor experiencia de usuario y su estabilidad dependerá del navegador que se utilice.
React Native
Se trata de la tipología de app más reciente, toda una evolución a la hora de desarrollar aplicaciones móviles. En este caso, se basa en la tecnología React Native, que permite crear apps nativas simplificando los procesos de desarrollo y haciendo posible desarrollarlas bajo un único código tanto para iOS como para Android.
React Native utiliza un lenguaje de programación Javascript y el gestor de paquetes NPM, lo que es sinónimo de garantía y estabilidad a largo plazo.
Este tipo de aplicaciones optimiza costes, ya que, al contrario de la nativa, no requiere programar para cada plataforma y además asegura que la experiencia de usuario será igual que si se tratase de una app nativa.