
Curso de Dart con Flutter
Domina Dart y Flutter desde cero y crea aplicaciones móviles listas para producción para Android e iOS. Este curso te lleva desde la sintaxis básica de Dart hasta la gestión de estado, redes, pruebas y despliegue en tiendas de aplicaciones. Cada concepto se fundamenta en código del mundo real que puedes usar de inmediato.
Lo que vas a aprender:
Comenzarás con los fundamentos de Dart, incluyendo variables, funciones, colecciones y programación orientada a objetos; luego pasarás a patrones asíncronos como Futures, Streams e Isolates. A partir de ahí, construirás interfaces de usuario con Flutter usando widgets de diseño, navegación y formularios. Implementarás la gestión de estado con Provider, Riverpod y BLoC, y conectarás tus aplicaciones a APIs REST y bases de datos SQLite. El curso también cubre pruebas unitarias, de widget y de integración, además de la integración con Firebase y la optimización del rendimiento. Al finalizar, tendrás las habilidades para diseñar, construir, probar y publicar una aplicación completa con Flutter.
Cómo estudias de forma práctica Curso de Dart con Flutter
Cómo practicas Curso de Dart con Flutter
Para ti que tienes una empresa y quieres capacitar a tu equipo
En Dedika para empresas, el curso incluye ejercicios y ejemplos adaptados a tu propio negocio y a las necesidades de tu empresa.
Contenido del curso
8 Capítulos • 38 LeccionesDuración entre 4 y 360 horas (tú decides)
Capítulo 1OcultarOcultar detallesVer detallesFundamentos del Lenguaje Dart
Fundamentos del Lenguaje Dart
Lección 1 • Flujo de Control y Bucles
Enseña las construcciones if/else, switch, for, while y do-while. Proporciona las estructuras lógicas necesarias para todo el trabajo algorítmico futuro.
Lección 2 • Funciones y Alcance
Define funciones con nombre, anónimas y flecha junto con las reglas de alcance léxico. Prepara a los estudiantes para un diseño de código modular y reutilizable.
Lección 3 • Colecciones: Listas, Sets y Mapas
Explora los tipos de colección principales de Dart y sus métodos de manipulación. Capacita a los estudiantes para almacenar y transformar datos estructurados de manera efectiva.
Lección 4 • Configuración del Entorno Dart
Instala el SDK de Dart, configura un IDE y ejecuta un primer programa. Establece la cadena de herramientas necesaria para todos los capítulos siguientes.
Lección 5 • Variables, Tipos y Operadores
Cubre el sistema de tipos estáticos de Dart, los tipos incorporados y los operadores aritméticos y lógicos. Permite un manejo correcto de datos en cada programa.
Capítulo 2OcultarOcultar detallesVer detallesProgramación Orientada a Objetos en Dart
Programación Orientada a Objetos en Dart
Lección 1 • Clases y Constructores
Introduce la declaración de clases, campos, métodos y tipos de constructores. Forma la columna vertebral de todo el código de widgets y modelos de Flutter.
Lección 2 • Seguridad Nula y Tipos Sólidos
Explica los tipos anulables vs. no anulables, los operadores ? y !, y las variables late. Elimina los errores de referencia nula antes del tiempo de ejecución.
Lección 3 • Interfaces y Mixins
Enseña interfaces implícitas y composición de mixins para compartir código horizontalmente. Proporciona patrones utilizados ampliamente en el sistema de widgets de Flutter.
Lección 4 • Enumeraciones y Métodos de Extensión
Explora enums mejorados y métodos de extensión para agregar comportamiento sin crear subclases. Mantiene las bases de código expresivas y fáciles de mantener.
Lección 5 • Herencia y Polimorfismo
Cubre extends, anulación de métodos y llamadas a super para construir jerarquías de clases. Permite la reutilización de código y un comportamiento flexible de los objetos.
Capítulo 3OcultarOcultar detallesVer detallesProgramación Asíncrona en Dart
Programación Asíncrona en Dart
Lección 1 • Futures y Async/Await
Cubre la creación de Futures, el encadenamiento con then/catchError y la sintaxis async/await. Permite patrones de código asíncrono limpios y legibles.
Lección 2 • Isolates para Paralelismo Verdadero
Explica los Isolates de Dart como espacios de memoria separados para tareas intensivas de CPU. Enseña a generar isolates y pasar mensajes a través de puertos.
Lección 3 • Streams y Stream Controllers
Introduce streams de suscripción única y de difusión, y el uso de StreamController. Prepara a los estudiantes para flujos de datos reactivos en aplicaciones Flutter.
Lección 4 • Comprender el Event Loop
Explica el modelo de concurrencia de un solo hilo de Dart y la cola de microtareas. Proporciona el modelo mental necesario para razonar sobre el orden de ejecución asíncrona.
Capítulo 4OcultarOcultar detallesVer detallesFundamentos de Flutter y el Árbol de Widgets
Fundamentos de Flutter y el Árbol de Widgets
Lección 1 • Widgets de Diseño Principales
Enseña Row, Column, Stack, Container y Expanded para componer diseños. Proporciona los bloques de construcción para cualquier diseño de pantalla en Flutter.
Lección 2 • Widgets de Entrada y Formularios
Introduce TextField, Form, TextFormField y la lógica de validación. Permite la recopilación y validación de la entrada del usuario en aplicaciones Flutter.
Lección 3 • Texto, Imágenes e Iconos
Cubre el estilo de Text, la carga de imágenes desde recursos y red, y el uso de Iconos. Capacita a los estudiantes para renderizar contenido visual enriquecido en sus aplicaciones.
Lección 4 • Widgets Stateless y Stateful
Distingue StatelessWidget de StatefulWidget y explica el ciclo de vida de build. Permite la selección correcta de widgets para cada escenario de UI.
Lección 5 • Descripción General de la Arquitectura de Flutter
Cubre las capas del framework Flutter: Dart, widgets, renderizado y motor. Proporciona a los estudiantes un modelo mental claro de cómo Flutter renderiza la UI.
Capítulo 5OcultarOcultar detallesVer detallesNavegación y Enrutamiento en Flutter
Navegación y Enrutamiento en Flutter
Lección 1 • GoRouter para Enrutamiento Declarativo
Introduce el paquete GoRouter para un enrutamiento conciso basado en URL con guardias. Simplifica árboles de navegación complejos en comparación con Navigator 2.0 puro.
Lección 2 • Enlaces Profundos y Rutas Dinámicas
Configura enlaces profundos en Android e iOS y mapea patrones de URL a pantallas. Soporta campañas de marketing y puntos de entrada externos a la aplicación.
Lección 3 • Navigator 2.0 y la API de Router
Explica RouterDelegate, RouteInformationParser y el modelo de navegación declarativa. Permite la navegación basada en URL para aplicaciones web y móviles.
Lección 4 • Fundamentos de Navigator 1.0
Cubre la navegación push, pop y de reemplazo con la API imperativa de Navigator. Establece la base antes de introducir el enrutamiento declarativo.
Capítulo 6OcultarOcultar detallesVer detallesEstrategias de Gestión de Estado
Estrategias de Gestión de Estado
Lección 1 • Elegir la Solución de Estado Correcta
Compara todas las soluciones cubiertas por complejidad, testabilidad y ajuste al tamaño del equipo. Guía a los estudiantes para tomar decisiones arquitectónicas informadas en proyectos reales.
Lección 2 • Riverpod para una Gestión de Estado Robusta
Cubre los proveedores de Riverpod, ref.watch y StateNotifier para estado seguro en compilación. Ofrece una alternativa testeable y sin código repetitivo a Provider.
Lección 3 • Estado Local con setState
Revisa setState para el estado local del widget e identifica sus límites de escalabilidad. Establece el contexto de por qué son necesarias las soluciones de estado externas.
Lección 4 • InheritedWidget y Provider
Explica la mecánica de InheritedWidget y el paquete Provider construido sobre él. Enseña el uso compartido de estado basado en ChangeNotifier a través del árbol de widgets.
Lección 5 • Patrón BLoC con flutter_bloc
Implementa el patrón BLoC usando Events, States y Cubits con flutter_bloc. Impone una separación estricta de la UI y la lógica de negocio a escala.
Capítulo 7OcultarOcultar detallesVer detallesRedes, APIs y Almacenamiento Local
Redes, APIs y Almacenamiento Local
Lección 1 • Serialización y Deserialización JSON
Enseña el análisis manual de JSON y modelos generados por código con json_serializable. Asegura un mapeo de datos con seguridad de tipos desde las respuestas de la API a objetos Dart.
Lección 2 • Base de Datos SQLite con sqflite
Crea esquemas relacionales, ejecuta operaciones CRUD y gestiona migraciones con sqflite. Permite el almacenamiento estructurado de datos sin conexión en aplicaciones Flutter.
Lección 3 • Dio para Operaciones HTTP Avanzadas
Introduce interceptores de Dio, cancelación de solicitudes y carga/descarga de archivos. Maneja escenarios de API complejos más allá del paquete http básico.
Lección 4 • Solicitudes HTTP con el Paquete http
Cubre las solicitudes GET, POST, PUT y DELETE y el manejo de respuestas con el paquete http. Conecta aplicaciones Flutter a cualquier endpoint de API REST.
Lección 5 • Persistencia Local con SharedPreferences
Almacena y recupera datos simples clave-valor usando el plugin SharedPreferences. Adecuado para configuraciones de usuario, tokens y estado ligero de la aplicación.
Capítulo 8OcultarOcultar detallesVer detallesPruebas, Depuración y Despliegue de Aplicaciones
Pruebas, Depuración y Despliegue de Aplicaciones
Lección 1 • Pruebas de Widgets en Flutter
Usa WidgetTester para montar widgets, simular interacciones y verificar el estado de la UI. Detecta regresiones de renderizado y comportamiento antes de las pruebas de integración.
Lección 2 • Pruebas Unitarias de Código Dart y Flutter
Cubre el paquete test, grupos de prueba, simulación con Mockito y cobertura de código. Valida la lógica de negocio independientemente de la capa de UI.
Lección 3 • Compilación y Publicación en Tiendas de Aplicaciones
Configura la firma, los sabores de compilación y las compilaciones de lanzamiento para las tiendas de Android e iOS. Completa el ciclo de vida completo de desarrollo a producción.
Lección 4 • Depuración con Flutter DevTools
Explora el inspector de widgets, el perfilador de rendimiento, la vista de memoria y la pestaña de red. Identifica y resuelve bloqueos de UI, fugas de memoria y fotogramas lentos.
Lección 5 • Pruebas de Integración y de Extremo a Extremo
Ejecuta flujos completos de la aplicación en un dispositivo real o emulador usando integration_test. Valida recorridos completos del usuario desde el inicio hasta la acción final.
Tu certificado válido de finalización
Este curso es para ti:
Desarrolladores web: deseosos de ampliar sus habilidades hacia aplicaciones móviles con calidad nativa.
Personas que cambian de carrera: que buscan un puesto de alta demanda en ingeniería móvil multiplataforma.
Ingenieros de backend: listos para dominar el stack completo añadiendo un front end con Flutter.
Aficionados: que quieren convertir una idea personal de app en un producto real y publicado.
Estudiantes de ciencias de la computación: que buscan habilidades prácticas de desarrollo móvil más allá del curso.
Desarrolladores de Android o iOS: que quieren consolidar su flujo de trabajo en una sola base de código compartida.
Lo que dicen nuestros alumnos
Sus clases son perfectas. Adquirí el paquete de un año y, finalmente, tengo la oportunidad de seguir diversos temas de mi interés sin necesidad de cambiar de plataforma... les agradezco por todo lo que hacen, ya los he recomendado a otras personas...

Me gusta cómo las lecciones van directo al grano y cómo puedo cambiar capítulos y saltar contenidos que no necesito.

Me gusta el contenido y la forma de presentación y transcripción de videos, ¡lo que acelera el proceso!

La plataforma es rápida, fácil de usar. La diversidad de contenido y los videos complementarios ayudan mucho en el aprendizaje.

Principales capacitaciones
Preguntas frecuentes
¿Quién es Dedika?
¿El certificado es válido en México?
¿Los cursos son gratuitos?
¿Cuál es la carga horaria del curso?
¿Cómo son los cursos?
¿Cómo funcionan los cursos?
¿Cuál es la duración de los cursos?
¿Cuál es el costo o precio de los cursos?
¿Qué es un curso EAD u online y cómo funciona?
Curso en PDF




















