¿Cuáles son los obstáculos para hacer que las aplicaciones web sean tan buenas como las aplicaciones nativas?

No estoy seguro de si esta pregunta busca una respuesta técnica o conceptual, ¡o incluso qué significa “bueno”! (O aplicaciones. Elegiré interpretarlo ampliamente para incluir grandes piezas de software, no solo pequeñas aplicaciones móviles). La velocidad es obviamente un gran obstáculo. El almacenamiento en caché es complicado y difícil y casi nadie lo hace bien, incluida la mayoría de los CDN. El procesamiento del lado del servidor realmente puede ayudar, como con el contenido dinámico y las imágenes, al quitarle la carga al cliente por completo. La codificación inteligente, que reduce la cantidad de scripts que deben ejecutarse, por supuesto es enorme.

Pero en muchos sentidos creo que las aplicaciones web ya son “mejores” que la mayoría de las aplicaciones nativas, en el sentido de que nuestros estilos de vida ahora son móviles y es “mejor” tener una solución que se adapte a usted que depender de la plataforma o la ubicación. . Los CRM, las suites de productividad, etc. ya son tan efectivos y completos en sus versiones web puras como nativos. Obviamente, los grandes consumidores de recursos (gran parte de Adobe Creative Suite, o software de edición de video) aún no pueden estar completamente en la Web debido a las demandas de ancho de banda y procesamiento, pero no tengo dudas de que lo estarán.

Acceso sin conexión. Es difícil crear una aplicación web que funcione bien cuando falla la conexión a Internet.

Latencia Hoy en día esto es principalmente un problema con las conexiones satelitales (que se usan comúnmente en los teléfonos celulares). Muchas aplicaciones web usan el servidor ampliamente para hacer cosas que se harían localmente en una aplicación nativa. Como tal, estas cosas fallarán si deben hacerse en tiempo real a través de una conexión de alta latencia. Como alguien que tiene Internet satelital en casa, noto esto todo el tiempo con varias aplicaciones web. Son prácticamente inutilizables con latencias> 500 ms.

Privacidad . Incluso si respeta la privacidad de sus clientes e implementa una buena seguridad, es más difícil comunicarlo a su cliente que con una aplicación nativa. En una aplicación nativa, el cliente puede sentir intuitivamente el control de sus datos almacenándolos localmente.

Ninguno de estos problemas cambia el hecho de que las aplicaciones web pueden ser sorprendentes y, en muchos sentidos, superiores a las aplicaciones nativas. Son solo cuestiones que deben considerarse.