TECHDENCIA 05
Desarrollo móvil nativo multiplataforma

Desarrollo móvil nativo multiplataforma

Una de las decisiones más importantes a la que debemos enfrentarnos como usuarios/as al ingresar en el mundo de la tecnología móvil es decidir qué sistema operativo va a acompañarnos en nuestro día a día. 

Existen dos grandes empresas que ocupan la gran parte del mercado: Android e iOS. Cada una tiene sus características, su experiencia de usuario, sus aplicaciones y una lista de diferencias a las cuales no son capaces o no quieren llegar a un consenso. En el mundo del desarrollo estas diferencias, junto con otras más a bajo nivel, hacen que la construcción de una aplicación requiera de una implementación propia y bien diferenciada.

Aunque comúnmente no existe más remedio que abordar dichas implementaciones por separado (sirviéndonos de desarrolladores/as especializados/as en cada sistema), en los últimos años han comenzado a aparecer soluciones multiplataforma que pretenden unificar al máximo ambos desarrollos, creando soluciones que viven al margen del sistema en el que finalmente se ejecutará la aplicación. Pero, ¿cómo funciona esta solución mágica?

Esta idea de disponer de un solo código para unirlos a todos apareció con las tecnologías híbridas. Cuando abrimos una aplicación web desde el navegador de nuestro móvil, ya sea en Android o iOS, esta web se verá y funcionará de forma similar, ya que ambos navegadores utilizan la misma implementación. 

Siguiendo esta línea, las tecnologías híbridas eran capaces de crear un cascarón vacío nativo para cada sistema operativo, sobre el cual se mostraban las diferentes páginas web a modo de «pantallas» de nuestra aplicación. Esta solución, aunque cumplía en ciertas situaciones, se quedaba muy limitada cuando la aplicación adquiría cierta complejidad.

Siguiendo este precedente, surgieron las tecnologías multiplataforma, encargadas de unificar la implementación de toda o parte de la aplicación en un código común, el cual posteriormente sería convertido en código nativo propio para cada sistema operativo.

De esta forma, aunque los/as desarrolladores/as utilicen un lenguaje común, la aplicación final se encontrará casi perfectamente adaptada a su dispositivo.

Los frameworks como Flutter o KMM, cuya popularidad está creciendo, realizan un trabajo estoico para adaptar sus soluciones lo máximo posible a las aplicaciones desarrolladas de forma completamente nativa, intentando que el usuario final sea incapaz de distinguir una implementación de otra.

image ¡Tuitea esta tendencia!