Aplicaciones nativas
Las aplicaciones nativas son aplicaciones que los programadores desarrollan para una plataforma móvil particular (como iOS o Android). Esto significa que puede crear una aplicación nativa solo con un lenguaje de programación de una plataforma elegida. Y esto generalmente se reduce a Objective-C o Swift para iOS y Java para Android.
Esta programación de bajo nivel ofrece muchas ventajas en términos de rendimiento de la aplicación y acceso directo a las API de la plataforma. Pero también tiene un costo de desarrollo más largo y costoso, así como la fricción de distribución.
- ¿Cuáles son actualmente las mejores opciones para JavaScript del lado del servidor?
- ¿Cuál es la aplicación más interesante de Freebase de Metaweb que hayas visto?
- ¿Cuál es la mejor empresa de desarrollo de aplicaciones web Laravel PHP?
- ¿Existe una plataforma de publicación de libros de código abierto?
- ¿Cuáles son los VPS asequibles con Cpanel?
Echemos un vistazo más de cerca a las ventajas y desventajas de las aplicaciones nativas.
Pros
• Gran actuación
Hasta ahora, ninguna otra solución (PWA, aplicaciones web o híbridas) ha podido igualar el nivel de rendimiento de las aplicaciones nativas.
Se cargan rápido, se ven y se sienten como si estuvieran destinados a estar en su teléfono y todo eso sin consumir gran parte de su batería.
Esta es la razón por la cual los usuarios pasan la mayor parte de su tiempo usándolos: ‘87% del tiempo de Internet móvil se gasta en aplicaciones ‘.
El alto rendimiento proviene de la programación de bajo nivel. Cuando escribe una aplicación con el idioma de la plataforma, su dispositivo no necesitará recursos adicionales para interpretar el código, por lo que se ejecutará de la manera más fluida posible. Mientras que con PWA, que funcionan en tecnologías web, su dispositivo tendrá que trabajar más duro para ejecutarlas.
• Acceso a todas las funciones específicas del dispositivo
Aunque los PWA ya pueden usar muchas funciones del dispositivo, sus capacidades aún están incompletas (faltan Bluetooth, NFC y otros). Con el desarrollo nativo, obtendrá acceso a todas las funciones específicas del dispositivo y no tendrá que depender de los navegadores para adoptarlas.
Contras
• fricción de distribución
Cada vez es más difícil atraer nuevos usuarios para aplicaciones nativas.
¿Por qué es así?
Las aplicaciones nativas son difíciles de descubrir y descargar. La única forma de distribuirlos es a través de mercados de aplicaciones como Play Market y App Store. Y los usuarios tienen que seguir de 4 a 6 pasos para descargar una sola aplicación. ¡Esto es demasiado!
La investigación muestra que en cada paso pierde el 20% de los usuarios potenciales.
¡Compare eso con la web, donde todo está a un clic de distancia y obtendrá la idea! Y los PWA aprovechan al máximo esta baja fricción.
En particular, en un intento por cerrar esta brecha, Google lanzó recientemente Aplicaciones instantáneas para Android. Este nuevo enfoque para el desarrollo nativo permite a los usuarios obtener acceso a ciertas funciones de una aplicación simplemente haciendo clic en un enlace. Esta es una forma de permitir que los usuarios prueben una aplicación sin tener que descargarla de Play Market.
Es demasiado pronto para saber qué tan bien funcionará esto, en términos de reducir los costos de adquisición de usuarios. Pero definitivamente vale la pena su consideración.
• Trabaja solo en una plataforma
Como ya he mencionado, debe desarrollar una aplicación nativa para cada plataforma por separado. Por lo tanto, no podrá usar la base de código de Android para su aplicación iOS.
Además, es probable que necesite diferentes especialistas para desarrollar plataformas Android e iOS. Raramente se da el caso de que un desarrollador conozca tanto Objective-C / Swift como Java. Al menos él o ella no serán igualmente buenos en ambos.
Mientras que con PWAs tendrás un sitio web y una aplicación todo en uno. Por lo tanto, cubrirá todas las plataformas que usan navegadores compatibles con PWA (más sobre eso a continuación).
• Desarrollo más largo y costoso.
Las aplicaciones nativas tardan más en desarrollarse y, por lo tanto, cuestan más. Esto sucede porque la programación de bajo nivel a menudo implica más trabajo para los desarrolladores de software. Mientras que el desarrollo web automatiza muchas tareas de desarrollo.
El desarrollo del outsourcing de una aplicación nativa puede costar desde $ 20k hasta $ 80k por cada plataforma, mientras que un PWA puede desarrollarse desde $ 6k hasta $ 20k desde cero.
• Más difícil de actualizar
Tampoco es tan fácil actualizar aplicaciones nativas. Para lanzar una corrección de errores o una nueva función, primero debe enviar la versión actualizada a Play Market o App Store y luego esperar que sus usuarios actualicen su aplicación. Lo que no siempre sucede. Es por eso que algunas aplicaciones envían notificaciones pidiéndole que actualice su aplicación o incluso bloquee cierta funcionalidad hasta que actualice.
Mientras que con PWA puede ejecutar actualizaciones sin interrupciones y sus usuarios las obtendrán en un instante en que se conecten.
Aplicaciones web progresivas
Las aplicaciones web progresivas son aplicaciones web que proporcionan experiencias móviles mejoradas gracias a las tecnologías modernas de la web.
Google los lanzó para aprovechar lo mejor de los dos mundos: el amplio alcance de la web y la buena experiencia de usuario de las aplicaciones nativas.
Los PWA utilizan trabajadores de servicios junto con otras tecnologías progresivas para acercarse a la experiencia nativa:
- Se puede agregar a la pantalla de inicio
- Parecen aplicaciones en dispositivos móviles (pantalla completa, navegación similar a una aplicación, etc.)
- Trabajar sin conexión
- Rápido
- Recibe actualizaciones fácilmente
- Enviar notificaciones push.
Además, los PWA hacen todo eso mientras están a un clic de distancia de los usuarios.
Repasemos las ventajas y desventajas de las aplicaciones web progresivas con más detalle.
Pros
• Poca fricción
Los PWA son un producto de la web, por lo que aprovechan lo mejor que la web tiene para ofrecer: baja fricción. Esta es la razón número uno por la cual las empresas usan aplicaciones web progresivas.
Para obtener acceso a una PWA, todo lo que tiene que hacer es hacer clic en un enlace. Y si le gusta lo que ve, puede permitir que la PWA le envíe notificaciones y lo agregue a su pantalla de inicio. No es necesario pasar por el proceso de instalación.
Todo eso permite a las empresas obtener más usuarios / clientes y hacerlo a un costo menor.
• Desarrollo más rápido y económico
Como ya he mencionado, puede obtener su PWA mucho más rápido y a un costo menor que una aplicación nativa. Además, funcionará en múltiples plataformas. ¡Esta es una gran ventaja para las startups!
En primer lugar, la mayor parte del desarrollo web lleva menos tiempo que la programación de bajo nivel.
Eso también significa que hay más desarrolladores web en el mercado que Java u Objective-C. Como resultado, sus tasas son más bajas y le será más fácil encontrar una.
Aquí hay una comparación simple de lo que ganan los desarrolladores nativos y lo que gana el desarrollador de JavaScript en los Estados Unidos.
En segundo lugar, podrá usar una aplicación en múltiples plataformas y dispositivos (computadoras de escritorio y dispositivos móviles).
• Siempre actualizado
En caso de que descubra un error en su PWA o decida agregar una nueva función, todo lo que tiene que hacer es actualizar su aplicación web de manera centralizada. De esta manera, cada usuario obtendrá una versión actualizada, tan pronto como se conecte.
Mientras que con las aplicaciones nativas, primero debe aprobar todas las actualizaciones con Play Market, lo que puede llevar algún tiempo y solo luego ofrecer a cada usuario que actualice sus aplicaciones.
Contras
• No es compatible con algunos navegadores, incluido Safari
Una de las mayores desventajas de los PWA es que solo Chrome, Firefox y Opera los admiten, dejando de lado Safari, así como los navegadores más pequeños. Y esto podría ser un gran problema para algunas empresas.
Sin embargo, el hecho de que algunos navegadores no admitan PWA no significa que no funcionen en esos navegadores. Los PWA aún funcionan en navegadores ‘no compatibles’, pero solo como sitios web móviles.
Y, los estudios de caso muestran que los PWA funcionan mejor que los sitios web móviles incluso en navegadores no compatibles.
Por lo tanto, en su navegador Safari móvil, no verá características como el modo de trabajo sin conexión y las notificaciones push.
• Limitaciones de rendimiento y mayor uso de la batería.
Todos hemos escuchado historias increíbles de PWA de los primeros usuarios. Se jactan de triplicar y cuadruplicar su velocidad de carga, aumentando los tiempos de sesión y las conversiones.
Algo como:
“… el sitio web de comercio electrónico Konga redujo el uso de datos en un 92% para la primera carga al migrar a una PWA”.
Debe saber que esos excelentes resultados de rendimiento están comparados con sitios web móviles y no con aplicaciones nativas . Aunque, no siempre lo dejan claro.
Los PWA aún son más lentos y consumen más batería que las aplicaciones nativas.
Esto sucede por todas las razones mencionadas anteriormente. A pesar de las ‘tecnologías progresivas’, su dispositivo aún tendría que interpretar el código de alto nivel de su PWA. Esto siempre conduce a un uso menos efectivo del hardware del teléfono.
• No se puede acceder a todas las funciones específicas del dispositivo
No podrá utilizar todas las funciones específicas del dispositivo con PWA. Aunque los navegadores más innovadores como Chrome han avanzado mucho en esta área, todavía hay cosas que no pueden hacer. Por lo tanto, no podrá usar las siguientes funciones en su PWA:
- NFC
- Bluetooth
- Sensores de proximidad
- Luz ambiental
- Controles avanzados de la cámara
- Geofencing
- Wake lock
- Contactos
Sin embargo, escuchamos que los equipos de desarrollo del navegador están trabajando en estas características, por lo que podría ser solo una cuestión de tiempo.