¿Por qué utilizar un marco multiplataforma como Flutter?
Las ventajas son varias pero podemos resumirlas como:
«Flutter es el kit de herramientas de interfaz de usuario de Google para crear aplicaciones estéticas compiladas de forma nativa para dispositivos móviles, web, de escritorio y embebidas, a partir de una única base de código»
La forma de desarrollar apps está cambiando
Según una encuesta realizada a 31.743 desarrolladores de todo el mundo entre 2019 - 2021 por Jetbrains y recogida por Statista, Flutter es el marco móvil multiplataforma más popular utilizado por desarrolladores globales. La encuesta concluye que el 42 por ciento de los desarrolladores de software usaban Flutter. En general, aproximadamente un tercio de los desarrolladores de dispositivos móviles utilizan tecnologías o marcos multiplataforma; el resto de los desarrolladores móviles utilizan herramientas nativas.
Fuente: Statista
Como observamos en el gráfico, en los tres últimos años Flutter ha sido el único marco de trabajo que ha crecido en cuanto a uso y en 2021 ha superado a React Native, que no solo se ha visto sobrepasado por el primero, sino que ha retrocedido un 5% en cuanto a uso entre los desarrolladores.
La encuesta cobra mayor relevancia cuando sabemos que la hace JetBrains, el creador de Kotlin, uno de los lenguajes, junto a Swift, más modernos y funcionales de los existentes y que además han conseguido hacerse un hueco en el mercado gracias a la interoperabilidad con Java en el caso de Kotlin y con Objective-C en el de Swift.
Ese creciente interés por Flutter lo demuestra también la diferencia que se está dando en términos de búsqueda en Google Trends entre React Native (en rojo) y Flutter (en azul). En la imagen se ve la evolución en los 12 últimos meses. Entrando en el enlace superior podemos ver también el desglose comparativo por región.
¿Tienes un proyecto app en mente? En Cuatroochenta convertimos tus necesidades en soluciones tecnológicas intuitivas, seguras y de máxima calidad.
¿Qué hace a Flutter diferente?
Sobre todo una estrategia basada en widgets para programar.
Tanto en los sistema operativos de escritorio (Windows, los reincorpora en su versión 11, pero sin soporte de terceros) como móviles (Android e iOS), los widgets son una forma muy práctica de previsualizar información concreta que contiene una aplicación instalada en nuestro dispositivo, sin necesidad de acceder a la propia aplicación.
Dart, el lenguaje de programación de código abierto para Flutter
Dart es un lenguaje de programación, de código abierto, creado por Google, para trabajar desde el cliente. Que sea de código abierto facilita que exista una comunidad que mejora sistemáticamente el marco de trabajo que a su vez recibe el soporte oficial de Google.
Para quienes quieren una descripción más amplia y profunda de la arquitectura Flutter pueden encontrarla clicando este enlace.
Agregar Flutter a la aplicación existente
Otro caso interesante es el de NUBBANC, una Fintech que se define como “el banco digital independiente más grande fuera de Asia” que también optó por Flutter para desarrollar aplicaciones móviles, partiendo de experiencias previas nativas y en React Native. En este artículo nos cuentan cómo lo hicieron proporcionando criterios detallados para tomar su decisión y una hoja de ruta para escalar con Flutter.
En este vídeo Daniel Hall, diseñador jefe global de UX, habla sobre diseño de infoentretenimiento y su relación con Flutter para Toyota.
Por su parte Sergio Aguado, CIO y socio fundador de Cuatroochenta, lo tiene claro “Gracias a Flutter, es la primera vez que se plantea una opción seria para que una aplicación móvil, desktop y web se desarrollen con una misma base de código. Este es el principal potencial de Flutter y es lo que, en mi opinión, representa el gran salto cualitativo: el hecho de tener su propio lenguaje y tener control sobre él, el hecho de montar todo un motor de renderizado y no utilizar la base de cada plataforma como sí hace React Native, lo que permite tener un time to market mucho más rápido para mejoras multiplataforma, pues no dependes de terceros”.
«Es la primera vez que de verdad hay un motor multiplataforma. Quizás la gente no se da cuenta del potencial que están gestando pero en 1-2 años cuando la parte web la mejoren en rendimiento de carga se va a comer básicamente a React Native, a nativo…»
La lista es más larga pero estos ejemplos dan idea de cómo las empresas se han sumado a la comunidad existente y están aportando recursos para que el proyecto siga creciendo.
Fuchsia, un sistema operativo modular y con Flutter
Fuchsia es el nuevo sistema operativo de Google. Algunos afirmaban que sería el sucesor de Android, aunque ahora parece que hay división de opiniones entre quienes piensan que será el S. O. de los “dispositivos conectados”, es decir el sistema operativo IoT de Google (para empezar a serlo está sustituyendo a los Cast Google en los Nest Hub de primera generación p.e.), y quienes se decantan hacia las aplicaciones de escritorio después de que Google esté intentando que su conocido navegador Chrome al “completo” trabaje en Fucsia OS.
Tanto la interfaz de Nest como la de Fucsia OS están basadas en Flutter, por lo que tanto Dart como Flutter se redimensionarán y pasarán a tener un alto potencial en el ámbito de los dispositivos IoT, teniendo en cuenta las estimaciones de Cisco que indican que “Dentro de la categoría de conexiones M2M (también se conoce como IoT), las aplicaciones para el hogar conectado tendrán la mayor participación y el automóvil conectado será el tipo de aplicación de más rápido crecimiento. Las aplicaciones para hogares conectados tendrán casi la mitad o el 48 por ciento de la participación de M2M para 2023 y las aplicaciones para automóviles conectados crecerán más rápido con una tasa compuesta anual del 30 por ciento durante el período de pronóstico (2018-2023).
Otro aspecto relevante es que el Kernel del Fuchsia no estará basado en Linux. Dispondrá de un microkernel propio llamado Zircon así como un pequeño conjunto de servicios, controladores y bibliotecas necesarios para su funcionamiento.
Quizá lo más relevante es que todo esto nos está conduciendo hacia una nueva forma de hacer de Google del que da cuenta el siguiente párrafo extractado de Digital Guide Ionos: “Con el concepto modular de la aplicación de Fuchsia, Google cambia el enfoque de las aplicaciones a las acciones y el contenido. En lugar del sistema operativo clásico de las aplicaciones usadas en la actualidad, con Fuchsia OS serán los componentes los que realizarán las tareas en las llamadas stories, que acceden a los recursos que necesitan mediante módulos”.