Saltar al contenido

Cross platform app development frameworks para la creación de aplicaciones móviles híbridas

¿Qué son los frameworks para la creación de aplicaciones móviles híbridas?

Los frameworks para la creación de aplicaciones móviles híbridas (cross platform app development frameworks) son un conjunto de herramientas que facilitan el desarrollo de aplicaciones móviles compatibles con diferentes sistemas operativos (Android, iOS, Windows e incluso basadas en la web) partiendo desde un mismo código fuente basado en estándares web o lenguajes de programación como Java o Ruby, entre otros.

¿Cuáles son las principales ventajas del uso de un framework para la creación de aplicaciones móviles híbridas?

La dicotomía entre desarrollo mediante tecnologías de desarrollo nativas frente al desarrollo multiplataforma ha protagonizado diversos debates desde la aparición de estas últimas tecnologías. Si bien el futuro parece enfocarse al desarrollo multiplataforma, existen algunas ventajas e inconvenientes asociados a cada modelo.

Las principales ventajas asociadas al uso de frameworks para la creación de aplicaciones móviles híbridas son: la reutilización del código fuente, es decir, la posibilidad de desarrollar aplicaciones para diversas plataformas a partir de un mismo código fuente que sirve de base con algunas modificaciones para todas ellas; la reducción de costes y tiempo de desarrollo, relacionado con el punto anterior; una mayor facilidad para el mantenimiento y distribución de actualizaciones ya que todas esas actividades se realizan sobre un mismo código fuente; la posibilidad de abarcar una mayor cuota de mercado con un mismo producto; y la unificación de la interfaz y la experiencia de usuario (UI/UX), ofreciendo la posibilidad de brindar una experiencia consistente y basada en estándares a todos los usuarios con independencia del sistema operativo que utilicen. Este último punto también puede generar ciertos inconvenientes teniendo en cuenta que cada sistema operativo tiene sus propias convenciones y estándares.

¿Qué aspectos deben tenerse en cuenta al elegir un framework?

En la decisión de optar por un framework u otro debemos considerar, entre otras:

  • La facilidad de aprendizaje.
  • La disponibilidad de documentación, tutoriales, guías y ejemplos.
  • La posibilidad real de reutilización del código, es decir, la compatibilidad con la mayor cantidad de sistemas operativos o, al menos, con aquellos más importantes.
  • La disponibilidad de componentes prediseñados para la interfaz de usuario.
  • La existencia de plugins o extensiones.
  • La capacidad real de las aplicaciones creadas para acceder a los sensores y al hardware del dispositivo.
  • La existencia de una comunidad de usuarios consolidada y grande.

Frameworks

A continuación, se recogen y presentan brevemente algunos de los principales frameworks disponibles en el mercado.

React Native

React Native es un framework de código abierto propiedad de Facebook basado en la biblioteca de JavaScript React.js. Lanzado en 2015, está pensado para desarrollar aplicaciones para Android, iOS, Mac, Windows y navegadores. Entre las aplicaciones más importantes desarrolladas con él encontramos la del propio Facebook, Bloomberg, Walmart, Uber o Shopify.

Entre sus principales puntos fuertes destaca la facilidad y variedad de opciones para generar interfaces de usuario, asi como para su actualización. Por otro lado, entre sus debilidades destaca el hecho de no ser completamente un framework multiplataforma (no todo el código es reutilizable) y su pobre optimización en términos de velocidad y uso de memoria.

Ionic

Aparecido en 2013, Ionic es un framework de código abierto basado en tecnologías web (HTML, CSS y JS) con integraciones de terceros frameworks como Angular, React o Vue y Cordova y Capacitor para el uso de los diferentes sensores y características de los dispositivos (cámara, GPS…). Está pensado para crear aplicaciones móviles para Android e iOS, así como para el desarrollo de aplicaciones de escritorio para Windows y MacOS o la creación de aplicaciones web progresivas. Entre las apps más importantes desarrolladas con Ionic encontramos aplicaciones como la de EA Games o la de las Southwest Airlines.

Entre sus principales puntos fuertes destaca el hecho de estar basado en tecnologías bien conocidas y robustas; su compatibilidad con React, Angular y Vue, así como con los plugins de Cordova; su importante catálogo de componentes y plugins para desarrollar interfaces; y su amplia documentación. Por contra, su curva de aprendizaje puede ser pronunciada si no se tiene conocimiento de Angular; el rendimiento de las aplicaciones resultantes está algo por debajo al de otros frameworks; y presenta una importante dependencia de diversos plugins.

Xamarin

Xamarin es un framework de código abierto lanzado en 2011 y propiedad de Microsoft desde 2016 basado en las tecnologías C#, .NET y Visual Studio para el desarrollo de apps para Android, iOS, macOS, y Windows. Entre las aplilcaciones más importantes desarrolladas con Ionic encontramos algunas como las de UPS, Alaska Airlines, Microsoft News o BBC Good Food.

Entre sus principales puntos fuertes destaca la importante compatibilidad del código escrito entre plataformas; la consistencia de sus interfaces entre sistemas operativos; el acceso a las APIs nativas de los sistemas operativos móviles; y su inmensa comunidad de usuarios y empresas. Entre sus puntos débiles destaca un mayor tamaño de las aplicaciones resultantes en comparación con las aplicaciones nativas; un acceso bastante limitado a determinadas bibliotecas de código abierto que deben compensarse con los recursos de .NET; o la necesidad de pagar una licencia de Visual Studio si no eres un particular o una startup.

Flutter

Desarrollado y lanzado en 2017 por Google, Flutter es framework de código abierto basado en el lenguaje de programación Dart pensado para desarrollar aplicaciones para Android, iOS, Mac, Windows, Linux y navegagores a partir de un mismo código fuente. Cuenta con su propio SDK para el desarrollo de aplicaciones móviles el cual presenta la funcionalidad hot reload que permite ver cambios en el código fuente de manera prácticamente inmediata a diferencia de otros entornos basados en emuladores. Entre las aplicaciones más destacadas desarrolladas con Flutter encontramos las del propio Google, eBay, Alibaba o BMW.

Entre los principales puntos fuertes de Flutter podemos destacar su facilidad de aprendizaje (en comparación al resto de alternativas); su integración con Material Design de Google y con iOS a través del pack Cupertino para desarrollar componentes y widgets; y su importante comunidad de desarrolladores. Entre sus puntos débiles podemos destacar el hecho de que Dart no es un lenguaje de programación especialmente popular; el tamaño de las aplicaciones resultantes; así como todos aquellos problemas derivados del hecho de ser un conjunto de tecnologías relativamente jóvenes en comparación al resto de alternativas mucho más asentadas en el mercado.

NativeScript

NativeScript es un framework completamente libre (licencia Apache) pensado para la creación de aplicaciones para Android e iOS utilizando JS, TypeSceipt, Angular o Vue. A diferencia de otros frameworks, permite acceder de manera nativa a las APIs de los sistemas operativos móviles. También permite renderizar interfaces nativas y, a pesar de utilizar tecnologías web para el código fuente, las aplicaciones creadas con NativeScript se ejecutan de manera nativa en el dispositivo sin necesidad de utilizar WebViews. Entre las aplicaciones desarrolladas con NativeScript más destacadas encontramos a Strudel, BitPoints, Daily Nanny o Dwitch.

Entre sus principales puntos fuertes destaca el hecho de estar basado en tecnologías bien conocidas y robustas; el acceso a las APIs e interfaz nativas de iOS y Android; y una importante colección de plugins y plantillas. Por otro lado, entre sus inconvenientes destaca el hecho de no ser un completamente un framework multiplataforma (no todo el código es reutilizable), el tamaño de las aplicaciones resultantes, su forma de ejecutar todos los procesos en un sólo hilo, lo que puede influir en el rendimiento de las aplicaciones; o una documentación algo escasa en algunos puntos.


Comentarios

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

*

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.


Archivo

Categorías

Defective by design.org

Hardcore Hits Cancer

Últimos comentarios

BY-SA 4.0 — Pinakes, 2022. Desarrollado con WordPress.

Uso de cookies

Este sitio web utiliza cookies para recoger datos de analítica. Si continúas navegando estás dando tu consentimiento para la aceptación de las mencionadas cookies y la aceptación de la política de cookies.

ACEPTAR
Aviso de cookies