Google Developers: Flutter: un marco de trabajo de IU portátil para  entornos móviles, web, insertados y de escritorio

¿Te gustaría aprender Desarrollo de Apps Móviles con Flutter?
Tenemos los diplomados que necesitas. ¡Haz clic aquí!

Ha llegado uno de los dos momentos clave del año para todo desarrollador mobile. Todos nosotros paramos para el Google IO y WWDC y esta vez ha tocado IO con la presentación de Flutter 2.2. Una vez más, vuelve a ser 100% remoto.

Las razones son evidentes, no se puede ni plantear la alternativa. Sin embargo, temo que no se dé marcha atrás cuando las circunstancias se vuelvan menos raras, y sería una pena. Es cierto que los frikis no parecemos muy sociables, pero echo de menos cuando ambas conferencias eran presenciales y tenías la opción de viajar y estar allí in situ. Al fin y al cabo, ver gente no es lo nuestro, pero dos veces al año, tampoco hace daño.

Ha habido bastantes novedades por parte de Google, pero vamos a intentar centrarnos en aquellas relacionadas con Flutter 2.2.

Novedades en Flutter 2.2

Desde hace ya algunos meses, teníamos disponible 2.0, y la versión Flutter 2.2 es la que fue lanzada en el Google IO 2021. Como la numeración indica, no son cambios radicales, pero no por ello no son bienvenidos. Se trata más que nada de afianzar cosas que ya se intuían desde antes.

Flutter, framework de Google)

Sound Safety en Dart

Dart es el lenguaje usado por Flutter y una de sus armas secretas. En su origen, era un lenguaje muy distinto de Swift y Kotlin, y tal vez más parecido a Objective C. Era un lenguaje muy dinámico había sido creado con el objetivo de destruir a Javascript y sustituirlo. Google había pensado usar su dominio de los browsers con Chrome y encasquetar Dart a todo el mundo. Incluso sacaron una versión de Chromium con la máquina virtual de Dart incluida, llamada Dartium.

¿Nunca has oído hablar de Dartium? Tranquilo, es normal y eso te da una idea del éxito que tuvo ese intento de Javascripticidio.

Aquella versión original de Dart resultaría familiar a cualquier programador de Javascript, pero no a alguien acostumbrado a Swift o Kotlin. Por ello, para alcanzar este nuevo mercado, Google se embarcó en una serie de modificaciones del lenguaje para añadir Tipos No-Nulos y Opcionales.

La tarea no era sencilla, pero se llevó a cabo muy bien y manteniendo la compatibilidad con anteriores versiones.

Pues bien, a partir de Flutter 2.2, ya puedes declarar tipos no-nulos y opcionales, igual que en Swift o Kotlin, y es de hecho la opción por defecto en cualquier proyecto nuevo.

Typedefs en Dart

Esto puede parecer poca cosa, pero una de las características que más esperaba yo. Hasta hace poco, sólo se podían crear typedefs para funciones y clausuras. Es decir, podías dar un nombre más claro a un tipo de función:

flutter 2.2 novedades

A partir de esa declaración, podíamos usar el “alias” IntTransformer para referirnos a cualquier función con ese tipo. Esto es vital para preservar la salud mental cuando tratas con clausuras, pero sólo se podía hacer con funciones. No podías crear un alias para otro tipo.

Esto, que puede parecer algo menos, es esencial cuando estás desarrollando un modelo complejo mediante DDD.

Un ejemplo muy sencillo, podría ser algo así para una App tipo Kindle:

novedades de flutter 2.2 ejemplo

Es probable que necesite un tipo específico para el nombre de un Autor (no toda cadena es válida como nombre) o para un conjunto de Autores, o incluso una forma mejor de representar el contenido que un simple buffer de bytes, pero de momento no me hace falta para arrancar. Sin embargo, en todo mi código ya aparecerá ese tipo (de momento solo un String) y ya podré hacerlo específico más adelante.

Flutter como herramienta multiplataforma

Desde un primer momento, la arquitectura de Flutter intuía que se iba a hacer una versión para otras plataformas además de mobile. Estaba demasiado bien diseñado como para que eso no se hubiese contemplado desde un primer momento.

Hace poco salió la versión Web, y en esta ocasión se ha avanzado mucho en el soporte de entornos desktop. Es algo muy bienvenido, para poner fin a la tiranía de Electron y su consumo abominable de recursos. Necesitar 16 Gb de ram para editar ficheros de texto es algo que no es admisible.

Pronto podremos usar un mismo stack para producir apps mobile y desktop con una calidad comercial.

Dart en Google Cloud

Otra novedad interesante en este sentido que ha salido en Google IO es Dart in Google Cloud. Una forma de crear microservicios en contenedores y desplegarlos rápidamente en Google Cloud.

Dart es un excelente lenguaje de programación para backends y hay herramientas muy buenas para ello, desde Shelf de Google hasta Conduit.

Stack Ideal para Startups

Todo esto hace de Dart / Flutter el stack ideal para startups y cualquiera que quiera sacar un MVP de forma rápida al mercado, alcanzado las principales plataformas: backend, mobile, desktop y web.

Te esperamos en los siguientes artículos en donde hablaremos más acerca de estos temas, los cuales hoy en día son de vital importancia en el mundo de la tecnología.

¿Te gustaría aprender Desarrollo de Apps Móviles con Flutter?
Tenemos los diplomados que necesitas. ¡Haz clic aquí!

About Author

NGuerrero

0 0 votos
Article Rating
Suscribir
Notificar de
guest
0 Comments
Comentarios.
Ver todos los comentarios
0
¿Te gusta este articulo? por favor comentax
()
x
Abrir chat
¿Quieres aprender a programar?
Hola 👋,
¿Te interesa información de nuestros cursos?