Elige tu idioma
Curso de Dart con Flutter
Más de 2 millones de estudiantes en todo el mundo

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.

Dedika para empresas

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.

Haz clic aquí

Contenido del curso

8 Capítulos • 38 LeccionesDuración entre 4 y 360 horas (tú decides)

Capítulo 1Ver detalles

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 2Ver detalles

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 3Ver detalles

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 4Ver detalles

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 5Ver detalles

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 6Ver detalles

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 7Ver detalles

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 8Ver detalles

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.

Certificación

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...
Giulio Carlo
Giulio CarloEstudiante de Marketing Digital
Me gusta cómo las lecciones van directo al grano y cómo puedo cambiar capítulos y saltar contenidos que no necesito.
Mariana Ferres
Mariana FerresEstudiante de Fotografía
Me gusta el contenido y la forma de presentación y transcripción de videos, ¡lo que acelera el proceso!
Luciana Alvarenga
Luciana AlvarengaEstudiante de Diseño de Uñas
La plataforma es rápida, fácil de usar. La diversidad de contenido y los videos complementarios ayudan mucho en el aprendizaje.
André Felipe
André FelipeEstudiante de Ingeniería de Prompt

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