Dart 3 y Flutter 3.10 de Google traen grandes cambios. Dart 3 presenta seguridad de sonido nulo, importantes funciones de lenguaje nuevas y una vista previa de Wasm, mientras que Flutter 3.10 desarrolla el kit de herramientas de widgets de Material 3 y la compatibilidad con objetivos de macOS e iOS.
Dart 3 y Flutter 3.10 de Google presentan grandes cambios. Google acaba de lanzar Dart 3, una importante actualización del lenguaje de programación, y el kit de herramientas de interfaz de usuario Flutter 3.10 que lo acompaña para aplicaciones móviles, web y de escritorio.
Flutter 3.10 llega con mejoras de diseño y macOS/iOS. Además de la seguridad de sonido nulo y las nuevas funciones de idioma, Dart 3 ofrece una vista previa de la compilación WebAssembly (Wasm).
Dónde conseguirlos y más detalles
Las actualizaciones de Dart y Flutter se anunciaron el pasado 10 de mayo. Las instrucciones de instalación de Flutter se pueden encontrar en docs.dev.flutter, y las del SDK de Dart en dart.dev.
Dart 3, ahora disponible como versión estable, contiene tres mejoras que Google describe como importantes:
- 100 % de seguridad nula sólida, que evita errores de tiempo de ejecución de nulos, proporciona una salida compilada más pequeña y mejora el rendimiento. Actualmente, el 99 % de los 1000 paquetes del administrador de paquetes de desarrollo para Dart son compatibles con la seguridad nula.
- Nuevas funciones de lenguaje que admiten datos estructurados con registros, desestructuración y coincidencia de patrones, y tipos de datos abstractos para la programación moderna.
- Modificadores de clase, una función de “usuario avanzado” que permite a los propietarios de paquetes expresar mejor las capacidades de las API.
Dart 3
Los desarrolladores de Dart también han estado trabajando en la compilación de Dart en el formato binario Wasm, con el objetivo de acelerar la carga en el navegador y mejorar el rendimiento de las aplicaciones web. La compilación de Dart to Wasm ahora está en vista previa. Para compilar a Wasm, los desarrolladores necesitan un navegador que admita WasmGC.
También se está trabajando en la interoperabilidad de Dart con Java y Kotlin en Android, y con Objective-C y Swift en macOS/iOS, similar a la interoperabilidad existente de Dart con compilación de código en bibliotecas C. Dart alguna vez fue percibido como un posible rival de JavaScript, pero se alejó de ese objetivo a mediados de la última década.
Flutter 3.10
Mientras tanto, Flutter 3.10 brinda soporte mejorado para el kit de herramientas de widgets de Material 3, incluido el soporte para la generación de esquemas de color algorítmicos de Material 3, junto con una serie de mejoras que facilitan la creación de aplicaciones para macOS e iOS.
Estos últimos incluyen la adición de compatibilidad con la revisión ortográfica en el widget de texto editable, un nuevo widget de casilla de verificación y compatibilidad con la depuración inalámbrica. El renderizador Impeller, en vista previa desde Flutter 3.7, ahora es el renderizador predeterminado en iOS, y promete menos bloqueos y un rendimiento más consistente.
También se incluye en Flutter 3.10 un puente JNI a las bibliotecas Jetpack escrito en Kotlin, lo que permite llamar a una nueva biblioteca Jetpack directamente desde Dart sin necesidad de un complemento externo.
El objetivo general de Google para Flutter es proporcionar cinco características principales:
- Belleza, proporcionando control sobre cada píxel de la pantalla.
- Velocidad, impulsada por gráficos acelerados por hardware.
- Productividad, con cargas de trabajo respaldadas por herramientas de desarrollo y recarga en caliente.
- Portabilidad, aprovechando una única base de código compartida para múltiples plataformas.
- Disponibilidad universal, al ser gratuito y de código abierto.