Tecnología - Roadmap Flutter 2019
Flutter 2019
Este documento está basado en el artículo original en el idioma inglés publicado por el equipo de Flutter en Github, el 17 de enero de 2019.
[Fuente](https://github.com/flutter/flutter/wiki/Roadmap?linkId=62503685/)
Con el lanzamiento de Flutter 1.0, en @Flutterio han realizado un buen comienzo!
Nuestros amigos de Google desean compartirnos detalles de alto nivel de su hoja de ruta este año 2019, para ver sus prioridades y hacernos conocer sus planes basados en el trabajo que están haciendo.
Temas generales
- Fundamentos
- Facilidad de adopción
- Ecosistema
- Soporte para plataformas más allá del móvil
- Actualizaciones dinámicas
- Herramientas
Los planes evolucionarán con el tiempo en función de los comentarios de los clientes y de las nuevas oportunidades de mercado. Si tienes comentarios sobre lo que crees que ellos deberían estar trabajando, te sugiero ponerte en contacto (por ejemplo, presentando un issue (https://github.com/flutter/flutter/issues/new/choose) o un correo electrónico a la lista de correo de flutter-dev (https://groups.google.com/forum/#!forum/flutter-dev/).
Lanzamiento de Channels y Cadence
Los desarrolladores de Flutter podemos seleccionar un "channel" para recibir actualizaciones. Disponemos de cuatro canales: master, dev, beta y estable, con crecientes niveles de estabilidad y confianza en la calidad, pero con mayor tiempo de espera para que los cambios se propaguen.
Se lanzará una versión beta cada mes, normalmente a principios de mes, y unas cuatro versiones estables a lo largo del año. Recomiendan que se utilice el canal estable para las aplicaciones liberadas a los usuarios finales. Para más detalles sobre el proceso de liberación, ve a la página wiki del proceso de release (https://github.com/flutter/flutter/wiki/Release-process/).
Temas
- Corrección de errores, basada principalmente en el número de emoji de "Pulgares Arriba" que los issues tengan (ver las páginas del wiki de Issue hygiene (https://github.com/flutter/flutter/wiki/Issue-hygiene/) e Issue triage (https://github.com/flutter/flutter/wiki/Triage/) para más detalles sobre la estrategia de priorización). (Las nuevas características, excepto las que se mencionan específicamente a continuación, son un área que están minimizando intencionadamente a medida que corrigen los errores en las características que ya han implementado antes de añadir más características).
- Rendimiento, incluyendo memory usage, engine footprint, frame times, etc. Si tienen benchmarks específicos en los que le gustaría que trabajaran, la mejor manera de conseguir que los vean es proporcionándoselos como devicelab tests (https://github.com/flutter/flutter/tree/master/dev/devicelab/).
- Mejorar las pruebas asegura de que se puedan proporcionar construcciones estables de forma fiable y rápida sin regresiones.
- Mejora de los mensajes de error, basada en la investigación de los usuarios, para que los errores sean más procesables e incluyan soluciones comunes.
- Mejoras en la documentación de la API, incluyendo en particular el suministro de código de ejemplo y diagramas, para continuar haciendo que las APIs sean fáciles de usar.
Facilidad de adopción
Pretenden facilitar a los nuevos desarrolladores el inicio en el viaje Flutter, por ejemplo:
- Atender las necesidades de los desarrolladores que deseen añadir Flutter a las aplicaciones existentes (https://github.com/flutter/flutter/wiki/Add-Flutter-to-existing-apps/), por ejemplo, proporcionando una nueva plantilla de módulo y una nueva API de integración de Android.
- Actualización y ampliación de la documentación en el sitio web de Flutter con más documentación arquitectónica de alto nivel y más documentación de estilo cookbook de alto nivel.
- Abordar las mejores prácticas para la gestión del estado en una aplicación Flutter.
- Continuar la inversión en la biblioteca de widgets Cupertino, para ayudar a los autores que se dirigen específicamente hacia iOS.
- Facilitar probar Flutter sin necesidad de instalar la pila completa de herramientas y runtime.
Ecosistema
Ecosistema en Flutter significa facilitar a los usuarios de Flutter hacer todo lo que necesitan rápidamente, incluso si el framework principal de Flutter no viene con soporte inmediato. Con este fin, dedicaran gran parte de su tiempo a las herramientas y a la infraestructura para crear un ecosistema creciente en torno a las tecnologías principales de Flutter. Google también dedicará algún tiempo a contribuir con los plugins y herramientas que se esperan de él.
El trabajo específico en el ecosistema para 2019:
- Mejor soporte para el uso de librerías C/C++ desde Flutter, incluyendo llamadas directas a C/C++ desde Dart y viceversa.
- Llevar los plugins y paquetes de primera mano de Flutter al mismo nivel de calidad e integridad que el framework principal.
- Trabajo completo en los plugins de Mapas y WebView para iOS y Android.
- Asegurarse de que las aplicaciones Flutter puedan beneficiarse de los servicios de Google, incluidos los pagos desde el servidor y YouTube.
- Proveer soporte para notificaciones locales y almacenamiento de datos locales.
Soporte para plataformas más allá del móvil.
Invertirán en expandir Flutter hacia otros aspectos de forma y perfiles de release en pos de su objetivo de crear un kit de herramientas de interfaz de usuario portable para cualquier lugar en el que se pinten píxeles.
- Soporte mejorado para la entrada de datos desde el teclado y el ratón.
- Poner a disposición de los desarrolladores el proyecto Hummingbird (Flutter corriendo en la Web).
- Continuar experimentando con Flutter en plataformas de escritorio (por ejemplo, macOS y Windows).
Actualizaciones dinámicas
La plataforma Dart, sobre la que se construye Flutter, nos brinda capacidades únicas para insertar código en tus aplicaciones sin hacer redeploy a la aplicación.
- Parcheo dinámico en Android, lo que permite desplegar actualizaciones de código en aplicaciones Flutter que se ejecutan en Android directamente desde un servidor.
- Carga dinámica de extensiones para permitir la carga casual de partes ocasionalmente usadas de tu aplicación.
Herramientas
- Continuar invirtiendo en Visual Studio Code, Android Studio e IntelliJ como IDEs de primera clase.
- Agregar soporte para Language Server Protocol(https://langserver.org/), y otros protocolos open para las herramientas que ofrece Flutter.
- Facilitar a los desarrolladores una mejora en la calidad y el desempeño de sus aplicaciones con experiencias mejoradas de creación de perfiles y depuración.
- Continuar mejorando las plantillas para que comenzar a trabajar con Flutter sea rápido y fácil.
Metas y fechas
Si estás interesado en observar lo que Flutter ha planeado mensualmente, puedes consultar su página de metas (https://github.com/flutter/flutter/milestones?direction=asc&sort=due_date&state=open/) en GitHub. Dicho esto, tener en cuenta que los problemas a menudo cambian las metas y que ninguno de ellas deben ser vistas como fechas comprometidas.