CONTENIDO
Módulo 1: Introducción a Flutter y su Ecosistema
- ¿Qué es Flutter? Historia evolución y casos de uso en la industria
- Ventajas de usar Flutter para el desarrollo multiplataforma
- Instalación y configuración del Flutter SDK
- Configuración de herramientas de desarrollo: Android Studio Xcode y Visual Studio Code
- Uso de Flutter Doctor para verificar dependencias y solucionar problemas comunes
- Estructura básica de un proyecto en Flutter: `maindart` `pubspecyaml` y otros archivos importantes
- Introducción a Flutter DevTools para depuración y análisis de rendimiento
Módulo 2: Widgets Básicos y Fundamentos de UI
- Concepto de widget: El árbol de widgets y su importancia en la construcción de interfaces
- Diferencia entre `StatelessWidget` y `StatefulWidget`: Cuándo usar cada uno
- Uso de widgets básicos como `Text` `Container` `Row` `Column` y `Stack`
- Personalización de widgets con propiedades como padding margin y alignment
- Uso de `setState` para actualizar dinámicamente la interfaz de usuario
- Inclusión de imágenes locales y desde URL
- Manejo de fuentes personalizadas y estilos de texto
Módulo 3: Personalización de Temas y Soporte para Dark Mode
- Configuración de temas globales con `ThemeData`
- Personalización de colores primarios secundarios y de texto
- Implementación de dark mode con `ThemeModedark`
- Creación de un toggle para alternar entre modos claro y oscuro
- Mejores prácticas para mantener la consistencia visual en la aplicación
Módulo 4: Diseño Responsivo y Adaptación a Múltiples Dispositivos
- Fundamentos del diseño responsivo en Flutter: Principios y retos
- Uso de `MediaQuery` para obtener información sobre el tamaño de la pantalla
- Implementación de layouts dinámicos con `Flexible` `Expanded` y `AspectRatio`
- Diseño de grids y listas adaptables con `GridView` y `ListView`
- Optimización de imágenes y textos para diferentes densidades de pantalla (DPI)
- Mejores prácticas para el diseño multiplataforma
Módulo 5: Navegación Simple y Manejo de Rutas Básicas
- Navegación básica con `Navigatorpush` y `Navigatorpop`
- Paso de parámetros entre pantallas
- Configuración de rutas nombradas en `MaterialApp`
- Implementación de transiciones básicas entre pantallas
Módulo 6: Listas Grids y Scroll Básico
- Uso de `ListView` `GridView` y `SingleChildScrollView`
- Creación de listas infinitas con `ListViewbuilder`
- Personalización de items en listas y grids con `ListTile`
- Implementación de efectos de scroll como parallax y sticky headers
Módulo 7: Widgets Platform-Specifics (Material 3 y Cupertino)
- Uso de widgets Material 3: `FloatingActionButton` `BottomNavigationBar` y `Card`
- Uso de widgets Cupertino: `CupertinoButton` `CupertinoNavigationBar` y `CupertinoPicker` Detección de plataformas con `Themeof(context)platform`
Módulo 8: Manejo de Formularios y Validaciones
- Uso de `TextField` `TextFormField` y `Form`
- Validación de formularios con `Validator`
- Manejo de estados locales con `setState`
- Envío de datos de formulario y manejo de errores
Módulo 9: Microinteracciones y Animaciones Básicas
- Uso de `AnimatedContainer` `AnimatedOpacity` y `Hero`
- Gestos básicos: `onTap` `onLongPress` `onDoubleTap`
Módulo 10: Introducción a la Gestión del Estado y Comunicación Simple
- Concepto de estado en Flutter: Local vs global
- Uso básico de `setState` para actualizar la interfaz
- Introducción a `ChangeNotifier` para patrones de gestión reactiva
Módulo 11: Integración con APIs REST Básicas
- Uso de paquetes como `http` para realizar peticiones GET/POST
- Serialización/deserialización básica con `dart:convert`
- Manejo de excepciones y errores en peticiones HTTP
Módulo 12: Persistencia Local con SharedPreferences
- Introducción a `SharedPreferences` y su uso
- Almacenamiento de datos simples: strings números booleanos
- Lectura y escritura de datos en `SharedPreferences`
Flutter Mobile Initial: Crea Apps Android/iOS desde Cero
Este curso introductorio está diseñado para enseñar los conceptos fundamentales del desarrollo de aplicaciones móviles con Flutter. Abarca desde la instalación y configuración del entorno hasta la creación de interfaces simples y funcionales para Android e iOS. Los estudiantes aprenderán a manejar widgets básicos, crear diseños responsivos, gestionar temas personalizados (incluyendo dark mode), realizar navegación entre pantallas, consumir APIs REST y almacenar datos localmente. Al finalizar el curso, los estudiantes habrán desarrollado una aplicación funcional que integra todos los conceptos aprendidos.