Flutter (software)

Summary

Flutter es un kit de desarrollo de software (SDK) de código abierto creado por Google. Se utiliza para desarrollar aplicaciones multiplataforma desde una única base de código para Web, Android, iOS, Linux, macOS, Windows y Fuchsia.[2]

Flutter
Información general
Tipo de programa Framework de aplicaciones
Autor Google
Desarrollador Google y la comunidad
Modelo de desarrollo Código abierto
Lanzamiento inicial Alpha (v0.0.6) 12 de mayo de 2017[1]
Licencia Nueva licencia BSD
Estado actual Activo
Información técnica
Programado en C, C++, Dart
Plataformas admitidas Android, iOS, Google Fuchsia, Web, Linux, macOS y Windows
Versiones
Última versión estable 5/5/20006 de agosto de 2024
Última versión en pruebas 3.28.0-0.1.pre (12 de diciembre de 2024)
Enlaces
Sitio web oficial
Repositorio de código

Flutter es utilizado internamente por Google en aplicaciones como Google Pay[3]​ y Google Earth,[4]​ además de ser adoptado por empresas como ByteDance, SHEIN, BMW y Alibaba.[5]

Flutter incluye su propio motor de renderizado, que escribe los píxeles directamente en la pantalla utilizando Skia o Impeller, en lugar de depender de las librerías gráficas nativas de cada plataforma.[6]

Arquitectura

editar

El componente básico de una aplicación en Flutter es un widget, que describe la lógica, la interacción y el diseño de un elemento de la interfaz de usuario de forma similar a React.[7]

Los widgets pueden ser de dos tipos:

  • Stateless widgets: solo se actualizan si cambian sus parámetros de entrada.
  • Stateful widgets: permiten actualizar su estado interno mediante el método setState().

El framework incluye dos conjuntos principales de widgets:

  • Material Design: para seguir las guías de diseño de Google.[8]
  • Cupertino: para imitar el diseño de iOS.

Las aplicaciones están escritas en Dart y compiladas de forma anticipada (AOT) en todas las plataformas, salvo en la web donde se transpilan a JavaScript o WebAssembly.[9]

El motor de Flutter, escrito principalmente en C++, se encarga del renderizado y de la comunicación con los SDKs nativos de Android e iOS para implementar funciones como accesibilidad, red, archivos y soporte de plugins.[10]

Historia

editar
  • 2015: La primera versión de Flutter se conoció como Sky y corría en Android. Fue presentada en el Dart Developer Summit con el objetivo de renderizar a 120 FPS.[11]
  • 2017: Publicación de la primera versión alfa (v0.0.6).
  • 2018: Se lanza Flutter 1.0 en Londres.[12]
  • 2020: Flutter 1.17 incorpora soporte para Metal en iOS.[13]
  • 2021: Se anuncia Flutter 2 con soporte inicial para aplicaciones de escritorio y web.[14]
  • 2022: Flutter 3 añade soporte estable para todas las plataformas de escritorio.[15]
  • 2024: Desarrolladores de la comunidad anuncian Flock, un fork de Flutter enfocado en facilitar las contribuciones sin perder compatibilidad con la base de código principal.[16]

Véase también

editar
  • Dart (lenguaje de programación)
  • Lista de bibliotecas gráficas multiplataforma

Referencias

editar
  1. Chris Bracken. «Release v0.0.6: Rev alpha branch version to 0.0.6, flutter 0.0.26 (#10010) · flutter/flutter». GitHub. Archivado desde el original el 5 de febrero de 2019. Consultado el 8 de agosto de 2018. 
  2. Amadeo, Ron (27 de febrero de 2018). «Google starts a push for cross-platform app development with Flutter SDK». Ars Technica (en inglés estadounidense). Archivado desde el original el 8 de octubre de 2021. Consultado el 11 de junio de 2021. 
  3. «Going global at Google Pay with Flutter». Archivado desde el original el 31 de marzo de 2024. Consultado el 2 de abril de 2024. 
  4. «Check out the new @googleearth for iOS, Android, and web with UI built using Flutter, all from a single codebase». Archivado desde el original el 2 de abril de 2024. Consultado el 2 de abril de 2024. 
  5. «Alibaba scales China's largest second-hand marketplace with Flutter». Archivado desde el original el 30 de marzo de 2024. Consultado el 2 de abril de 2024. 
  6. «Flutter architectural overview». docs.flutter.dev (en inglés). Consultado el 26 de julio de 2024. 
  7. Windmill, Eric; Rischpater, Ray (2020). Flutter in action. Manning Publications Co. ISBN 9781617296147. 
  8. Anderson, Tim (5 Aug 2020). «Google reports 80% spike of Flutter-built apps in Play Store as 1.20 is released». The Register. 
  9. Thomsen, Michael (14 de mayo de 2024). «Landing Flutter 3.22 and Dart 3.4 at Google I/O 2024». Flutter (en inglés). Consultado el 17 de mayo de 2024. 
  10. «Technical Overview - Flutter». flutter.dev (en inglés). Archivado desde el original el 16 de junio de 2020. Consultado el 13 de diciembre de 2017. 
  11. Amadeo, Ron (1 de mayo de 2015). «Google's Dart language on Android aims for Java-free, 120 FPS apps». Ars Technica. 
  12. Amadeo, Ron (4 de diciembre de 2018). «Google bridges Android and iOS development with Flutter 1.0». Ars Technica. 
  13. Siddiqui, Aamir (6 de mayo de 2020). «Google releases Flutter 1.17 and Dart 2.8 stable SDKs for app development». XDA. 
  14. Lardinois, Frederic (3 de marzo de 2021). «Version 2 of Google's Flutter toolkit adds support for desktop and web apps». TechCrunch. 
  15. Claburn, Thomas (11 de mayo de 2022). «Google's Flutter app development framework now stable across platforms». The Register. 
  16. Larabel, Michael (29 de octubre de 2024). «Google's Flutter UI Toolkit Forked As Flock». Phoronix. Consultado el 30 de octubre de 2024.