CONTENIDO
Módulo 1: Introducción al Curso y Herramientas Avanzadas
- Presentación del alcance del curso competencias a desarrollar y ejemplos de aplicaciones intermedias
- Recapitulación de widgets navegación simple y manejo básico de formularios
- Configuración avanzada del entorno con Flutter DevTools y Flutter Inspector
- Uso de herramientas de debugging como Performance Overlay y Memory Profiler
- Introducción a librerías avanzadas de gestión de estado: Provider Riverpod GetX BLoC y Flutter Hooks
- Buenas prácticas con Git: ramificación fusión y resolución de conflictos
- Integración de repositorios remotos y colaboración en equipos mediante GitHub/GitLab
- Automatización de tareas con scripts y herramientas como flutter pub
Módulo 2: Gestión Avanzada del Estado
- Introducción a la gestión del estado: setState ChangeNotifier
- Uso de Provider para gestión de estado simple y global
- Riverpod: Manejo de estado global e inyección de dependencias
- GetX: Gestión de estado navegación y dependencias
- BLoC: Patrón avanzado para separar lógica de negocio y UI
- Flutter Hooks: Simplificación del código con hooks
- Estrategias para elegir la mejor librería según el caso de uso
- Manejo de estados locales vs globales: cuándo usar cada uno
Módulo 3: Navegación Avanzada y Deep Linking
- Rutas dinámicas y parámetros avanzados
- Configuración y uso de deep linking en Flutter
- Navegación por gestos y animaciones personalizadas
- GoRouter/AutoRoute: Navegación modular y escalable
- Manejo de estados offline/online durante la navegación
- Transiciones fluidas entre pantallas con Hero
- Implementación de navegación anidada
- Optimización de rutas para aplicaciones grandes
Módulo 4: Consumo Eficiente de APIs REST y GraphQL
- Consumo de APIs REST con paquetes como http y dio
- Serialización/deserialización avanzada con json_serializable
- Manejo de excepciones y errores en peticiones HTTP
- Uso de GraphQL con Apollo Client u otros frameworks
- Estrategias de caché y optimización de consultas
- Paginación y carga diferida de datos
- Autenticación y autorización en APIs
- Mejores prácticas para documentar endpoints
Módulo 5: Manejo Robusto de Formularios
- Validación de formularios con Form y Validator
- Manejo de estados locales con Provider o Riverpod
- Validaciones asíncronas y mensajes de error dinámicos
- Envío seguro de datos de formulario y manejo de excepciones
- Creación de campos personalizados y reutilizables
- Manejo de inputs condicionales
- Mejoras de UX en formularios: máscaras y autocompletado
- Diseño de formularios accesibles
Módulo 6: Persistencia de Datos con SQLite y Hive
- Introducción a SQLite: creación de tablas y consultas básicas
- Uso de Hive: almacenamiento NoSQL rápido y ligero
- Lazy Loading: optimización de carga diferida en listas
- Migración de datos y versionamiento de bases de datos
- Estrategias para sincronizar datos locales y remotos
- Backup y restauración de datos
- Optimización de consultas SQL
- Casos de uso para SQLite vs Hive
Módulo 7: Integración con APIs de Terceros
- Integración con redes sociales: Facebook Twitter Google Sign-In
- Autenticación OAuth y JWT
- Integración con servicios de pago: Stripe MercadoPago PayPal
- Uso de APIs de geolocalización y mapas (Google Maps)
- Manejo de tokens y refrescos automáticos
- Protección de credenciales y claves API
- Monitoreo de APIs externas
Módulo 8: Optimización y Rendimiento en Apps Móviles
- Uso avanzado de Flutter DevTools
- Optimización del renderizado y la UI
- Manejo eficiente de imágenes y assets
- Empleo de Isolates y Compute
- Técnicas de Tree Shaking y reducción de tamaño
- Refactorización de código ineficiente
- Análisis de cuellos de botella
- Mejores prácticas para apps de alto rendimiento
Módulo 9: Diseño Responsivo y Adaptativo
- Diseño responsivo con MediaQuery y LayoutBuilder
- Uso de Flexible Expanded y AspectRatio
- Optimización para tablets y pantallas grandes
- Mejores prácticas para diseño adaptativo
- Diseño para diferentes densidades de pantalla
- Adaptación de layouts complejos
- Uso de breakpoints
Módulo 10: Animaciones y Microinteracciones
- Animaciones simples con AnimatedContainer y Tween
- Animaciones complejas con AnimationController
- Microinteracciones: transiciones entre estados de botones
- Uso de Hero para transiciones entre pantallas
- Animaciones basadas en gestos
- Transiciones fluidas entre widgets
- Diseño de animaciones accesibles
- Herramientas para prototipado de animaciones
Módulo 11: Internacionalización y Localización
- Configuración básica de internacionalización con flutter_localizations
- Uso de archivos arb para traducciones
- Cambio dinámico de idioma en tiempo de ejecución
- Formateo de fechas números y monedas
- Estrategias para traducir contenido dinámico
- Soporte para RTL (Right-to-Left) languages
- Testing de localización
Módulo 12: Accesibilidad – Diseñando Apps Inclusivas
- Fundamentos y normativas de accesibilidad
- Estrategias de diseño inclusivo
- Implementación práctica en Flutter con Semantics
- Evaluación y herramientas de accesibilidad
- Diseño para lectores de pantalla
- Mejoras de contraste y tipografía
- Accesibilidad en animaciones
Módulo 13: Testing y Depuración
- Unit Testing: Pruebas de funciones y clases
- Widget Testing: Pruebas de componentes de UI
- Integration Testing: Pruebas de flujo completo
- Uso de Flutter DevTools para depuración avanzada
- Estrategias para pruebas automatizadas
- Testing de APIs y servicios
- Debugging de errores comunes
- Mejores prácticas para testing
Flutter Developer Pro: Lleva tus Apps al Siguiente Nivel
Este curso profundiza en el desarrollo móvil intermedio con Flutter, enfocándose en la gestión de estado avanzada, consumo eficiente de APIs REST y GraphQL, manejo robusto de formularios, persistencia de datos utilizando SQLite/Hive, y la integración con APIs de terceros. También se abordarán temas como navegación avanzada, deep linking, autenticación, diseño responsivo, animaciones y microinteracciones, internacionalización, accesibilidad, testing y optimización de rendimiento.


