¿Qué es una APP Nativa?
La aplicación nativa está especialmente desarrollada para sistemas operativos móviles (ya sea iOS, Android, Windows Phone). Para cada sistema operativo, usa una programación de lenguaje diferente, por ejemplo, Android usa Java, mientras que iOS usa Swift / Objective-C.
¿Qué es una APP Híbrida?
Las aplicaciones híbridas se realizan utilizando tecnologías HTML, Javascript y CSS (compatibles con todos los dispositivos), y se compilan y procesan para cada SO móvil a través de los diferentes frameworks que encontramos en el mercado.
Hay muchos frameworks en el mercado, en nuestro ejemplo usamos Apache Cordova/Phonegap porque es gratis, para nosotros parece ser uno de los frameworks más confiables, propiedad de Adobe, por lo que se puede garantizar que siempre estará actualizado. Otro factor muy interesante es que Phonegap ha ajustado su API a la última especificación W3C. Una vez que conocemos la definición, veremos sus respectivas ventajas y desventajas:
Aplicación Nativa:
Ventajas
- El rendimiento de las aplicaciones se ha optimizado en gran medida porque están programadas explícitamente para el sistema operativo y pueden usar menos capas para lograr la funcionalidad del dispositivo.
- Tiene un menor consumo de recursos del dispositivo.
Desventajas
- Debe desarrollar una aplicación para cada plataforma, por lo que el costo y el tiempo de desarrollo se incrementarán considerablemente.
- Las actualizaciones o el mantenimiento es más costoso.
Aplicación Híbrida:
Ventajas
- Dado que está desarrollado con HTML, JavaScript y CSS, y es compatible con diferentes dispositivos, al desarrollar una APP Híbrida, el código fuente solo necesita ser creado una vez, por lo que el costo y tiempo de desarrollo son mucho menores que las APP Nativas, aunque siempre hay que realizar pequeños cambios en los diferentes sistemas operativos.
- Hoy en día, en términos de diseño, gracias a frameworks como Framework7, casi no hay diferencia en la apariencia de las aplicaciones nativas.
Desventajas
- Las APP híbridas consumen algo más de recursos del dispositivo.