Flutter es un framework para crear aplicaciones móviles para iOS y Android, el propósito del framework es facilitar la creación de aplicaciones estéticas, nativas y de alto rendimiento desde una misma base de código.
Desde que se introdujo esta herramienta de trabajo, se ha convertido en uno de los más populares, miles de empresas y desarrolladores aprenden o inician a crear proyectos con Flutter, desde Google hasta Alibaba.
Puedes seguir esta presentación para conocer Flutter a detalle:
Por qué usar Flutter
En general, un framework de trabajo como Flutter ofrece incontables características, beneficios y facilidades para desarrollar una aplicación, sin embargo, creo que podemos destacar algunas características de Flutter que lo hacen tan popular entre los desarrolladores:
- Desarrollo ágil, con features como Hot reload, que te permite hacer cambios y ver las actualizaciones de manera instantánea.
- Apps nativas con una misma base de código. A diferencia de otros frameworks donde la gran parte del código se comparte, en Flutter el 100% del código funciona para ambas plataformas, y no tienes que escribir código personalizado para ninguna, esto mientras compila a aplicaciones nativas.
- Alto rendimiento. Las apps de Flutter funcionan a 60fps, lo que ofrece una percepción de rendimiento altísimo, animaciones fluidas, actualizaciones rápidas, etc.
- UI estética. Flutter ofrece componentes de interfaz gráfica listos para usarse, mismos que respetan los sistemas de diseño de ambos iOS y Android, destacando por supuesto Material Design, por lo que las apps se ven bien tan pronto las construyes.
Además de eso, Google ha invertido muchísimo en la difusión del framework y en la creación de recursos que te permitan aprender a desarrollar apps para el mismo, por lo que terminas con un muy buen framework, buenos recursos para aprender, el respaldo de un gigante como Google.
Flutter 1.5
Durante el Google I/O 2019, se presentó una actualización importante al framework. Con la versión 1.5, Flutter pasaba de ser un framework para aplicaciones móviles, y se convertía en un framework multiplataforma para crear aplicaciones que funcionen en móvil, web, desktop y embebidos, todo con la misma base de código.
Luego del éxito que ha tenido Flutter como framework para aplicaciones nativas, el equipo ha estado trabajando en una forma de llevar ésta popular experiencia de desarrollo a otras plataformas y entornos.
Con el anuncio, se introdujo un Technical Preview para Flutter y la web, por lo que desde hoy, puedes crear aplicaciones web y aplicaciones web progresivas usando Flutter. Flutter Web no busca reemplazar HTML, está pensado para las aplicaciones con interfaces que se actualizan constantemente y de alta interacción.
Por último, es importante mencionar que Flutter Web es un trabajo en progreso, así que aún queda mucho tiempo antes de que podamos usarlo en producción.
Además de Flutter Web, se presentó una primer versión de lo que eventualmente será Flutter para Desktop, con lo que podrás construir apps para macOS, Windows y Linux. Puedes encontrar una guía del equipo de Flutter para crear apps desktop usando Flutter aquí. Tal como Flutter Web, este es un primer acercamiento a Flutter Desktop, y tendrá que pasar algo de tiempo antes de que podamos empezar a desarrollar apps para producción con Flutter.
Cómo iniciar con Flutter
Flutter es un framework que usa como lenguaje de programación Dart, un lenguaje creado por Google pensado para trabajar desde el cliente, inicialmente como sustituto de JavaScript, que hoy se usa casi únicamente en conjunto con Flutter.
Puedes aprender Dart, el lenguaje de programación, aquí en CódigoFacilito siguiendo este enlace: https://codigofacilito.com/cursos/dart
Luego de Dart, puedes iniciar con Flutter usando nuestro curso de introducción al framework: https://codigofacilito.com/cursos/introduccion-flutter
Otro excelente recurso para especializarse en Flutter es suscribirse y seguir el canal oficial de Flutter en YouTube, donde el equipo de desarrollo de Flutter y el de difusión, suben contenido constante acerca de esta tecnología: https://www.youtube.com/channel/UCwXdFgeE9KYzlDdR7TG9cMw
Udacity, cuenta también con cursos de Flutter (en inglés) creados en colaboración con Google, por lo que también son una muy buena opción, este es el link para seguirlo: https://www.udacity.com/course/build-native-mobile-apps-with-flutter--ud905
Sin importar qué recurso uses, parece que no ha habido mejor momento para aprender Flutter que hoy, especialmente luego de que dejó de ser un framework móvil, para convertirse en uno multipltataforma que funcionará en móviles, la web, desktop, chrome OS y embebidos. ¿Increíble, no?