Todo esto depende de lo que quiere que haga su aplicación, de lo que quiere que se integre y de cuánto tiempo tenga para construirla y mantenerla.
Esencialmente, tienes tres opciones:
Aplicaciones móviles nativas, que se desarrollan en un lenguaje de programación nativo del dispositivo y sistema operativo (Android o iOS), y requieren que se cree una aplicación específica para una plataforma de destino.
- ¿Son suficientes los traductores en línea para la localización de aplicaciones móviles?
- ¿Quién ofrece un servicio de desarrollo de aplicaciones móviles a un precio asequible?
- ¿Cómo trabajan los desarrolladores de aplicaciones con la arquitectura?
- ¿Qué son las herramientas de desarrollo de aplicaciones móviles?
- ¿Cuáles son las mejores herramientas para desarrollar rápidamente aplicaciones móviles para las plataformas iOS y Android?
Pros:
- Proporciona acceso a todas las funciones que ofrece el dispositivo y el sistema operativo. No se encontrará con algo que otras aplicaciones pueden hacer que su aplicación no puede hacer.
- Permite utilizar funciones avanzadas, como la entrada de acceso USB, redes complejas, gestión de memoria, etc.
- No hay limitaciones en términos de rendimiento y velocidad de la aplicación. Esto es importante al crear una aplicación intensiva de gráficos, como un juego, o una aplicación que será utilizada por millones de usuarios
Contras:
- Si es compatible con múltiples dispositivos (por ejemplo, iOS y Android), será necesario desarrollar dos o más aplicaciones separadas
- No se puede compartir ningún código entre las versiones de estas aplicaciones separadas
Aplicaciones móviles multiplataforma, que se desarrollan utilizando un lenguaje intermedio, como Javascript, que no es nativo del sistema operativo del dispositivo. Esto significa que parte o la totalidad de este código se puede compartir en las plataformas de destino, por ejemplo, tanto en iOS como en Android.
Pros:
- El código se puede compartir entre diferentes versiones de las aplicaciones en todos los dispositivos (posiblemente hasta el 80%)
- La interfaz de usuario se representa mediante controles ‘nativos’, por lo que el rendimiento de la interfaz de usuario puede ser tan rápido como el nativo.
Contras:
- No se puede compartir todo el código, por lo que es posible que deba escribirse algún código nativo
- La velocidad puede verse afectada, ya que algunos idiomas intermedios pueden ser interpretados ‘sobre la marcha’
Aplicaciones móviles híbridas HTML5, que son aplicaciones multiplataforma pero representan la interfaz de usuario utilizando un navegador web incorporado, aprovechando HTML, CSS y Javascript.
Pros:
- El código se puede compartir entre diferentes versiones de las aplicaciones en todos los dispositivos (posiblemente hasta el 80%)
- La construcción de la parte central de la aplicación utilizando tecnologías web permite un tiempo de desarrollo más rápido (dependiendo de su desarrollador, por supuesto)
Contras:
- No se puede compartir todo el código, por lo que es posible que deba escribirse algún código nativo
- La velocidad puede verse afectada, ya que la interacción es a través del control integrado del navegador web
De hecho, escribimos un artículo más detallado que analiza las ventajas y desventajas de cada plataforma para el desarrollo de aplicaciones. Entonces, si está buscando construir una aplicación, asegúrese de echar un vistazo.