Aplicaciones híbridas y webapps: lo peor de los dos mundos

21 April 2014

Cuando escuchas la palabra híbrido piensas en algo creado juntando las mejores partes de dos (o más) cosas diferentes. El hipogrifo, por ejemplo, una criatura mitad caballo mitad águila, que puedes montar (porque es un caballo) y puede volar (porque tiene alas). La realidad es que en en el MundoReal™, las cosas no son tan simples.

En el mundo de las aplicaciones móviles se suelen llamar aplicaciones híbridas a aquellas que están escritas en HTML y JavaScript y son ejecutadas dentro de un webview. Este webview se empaqueta en una aplicación nativa para que puedan ser distribuidas en las tiendas correspondientes (AppStore, Google Play o Window Phone Store). Al final lo que se obtiene es un cascarón vacío que lo único que hace es visualizar una página web externa. Las aplicaciones que se ejecutan en un webview (ya sean híbridas o una página web directamente) son siempre más lentas que las nativas. Esto es así porque necesitan de este componente de software grande y complejo que tiene que ser cargado en memoria para que pueda interpretar la aplicación en cuestión (como ya he mencionado, escrita en HTML + JavaScript). Es como tener un funcionario perezoso entre tú y la Administración (o entre tu aplicación y el sistema operativo).

img post 02



Todo esto tampoco beneficia a la parte nativa: es necesario mantener ese entorno de desarrollo nativo (a pesar de hacer todo el trabajo en otro lenguaje) para poder crear el cascarón. Y aún así, tampoco se evita el tedioso proceso de validación de la aplicación, con todas sus reglas y el tiempo de espera que conlleva.

Adicionalmente, si la aplicación tiene que usar algunos de los sensores del dispositivo como el giróscopo o la brújula, será necesario pelearse con complejas librerías o plugins que al final no hacen más que añadir otra capa más a esa -ya lenta- aplicación. Y esto con mucha suerte, ya que si no encontramos el plugin que necesitamos, la única opción es programarlo ad-hoc en el lenguaje nativo y para cada una de las plataformas.

Dicen que una de sus grandes ventajas de una aplicación híbrida es que dicha aplicación va a tener el mismo aspecto en todas las plataformas. Eso, personalmente como usuario y dejando a un lado mi parte más técnica, no me parece una ventaja, sino todo lo contrario. Un usuario está acostumbrado a una serie de controles y estilos de navegación propios de la plataforma que utilice su terminal. Yo quiero que las aplicaciones de mi dispositivo tengan una apariencia similar (para saber donde está la barra de búsqueda o cómo se vuelve a la pantalla anterior, por ejemplo) sin importarme como se visualiza o se navega en el resto de plataformas.

Lo cierto es que la mayor parte de las veces las empresas se decantan por aplicaciones híbridas por temas exclusivamente de coste, ya que solo es necesario saber HTML y JavaScript, sin pensar ni en el rendimiento de la aplicación, ni en el consumo de memoria, ni en la velocidad, ni en la calidad de navegación, ni en la experiencia de usuario... dejando los desarrollos en manos de programadores inexpertos cuyo resultado son aplicaciones mediocres que en muchos casos (y por experiencia) acabarán en la basura y se sustituirán por aplicaciones nativas.

Y es que la frase if you pay peanuts you get monkeys, cobra todo el sentido cuando hablamos de aplicaciones híbridas.


Aplicaciones híbridas y webapps: lo peor de los dos mundos

Deja un comentario

Escrito por:

Administrador

Varios
Javascriptappaplicacion nativaaplicaciones hibridasaplicaciones nativashibridahtmlwebappwebapps

Utilizamos cookies propias y de terceros para mantener la sesión o sus preferencias, recopilar estadísticas y proporcionar contenidos conforme a sus intereses. Si continua navegando, utiliza los servicios de la web o pulsa el botón, está aceptando su instalación y el uso que hacemos de ellas. Puede obtener más información sobre como revocar su consentimiento o cómo cambiar la configuración en este enlace.