
Curso de Flutter con Firebase
Construye aplicaciones móviles full-stack combinando el potente framework de interfaz de usuario de Flutter con los servicios backend de Firebase. Este curso te lleva desde la configuración del entorno hasta el despliegue en producción, cubriendo autenticación, Firestore, almacenamiento en la nube y notificaciones push. Cada concepto se aplica mediante código práctico, para que termines con una aplicación real y distribuible.
Lo que vas a aprender:
Aprenderás a construir aplicaciones completas con Flutter respaldadas por Firebase, comenzando con los fundamentos de Dart y el sistema de widgets de Flutter. Implementarás flujos de autenticación seguros, modelarás y consultarás bases de datos Firestore, y gestionarás la subida de archivos con Firebase Storage. El curso cubre la gestión de estado con Provider y Riverpod, las reglas de seguridad de Firestore y las Cloud Functions. También integrarás Firebase Analytics, Crashlytics y las notificaciones push. Al finalizar, sabrás cómo escribir pruebas automatizadas, aplicar patrones de arquitectura limpia y desplegar tu aplicación en la App Store y Google Play.
Cómo estudias de forma práctica Curso de Flutter con Firebase
Cómo practicas Curso de Flutter con Firebase
Para ti que eres empresa y quieres formar 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 de Flutter y Firebase
Fundamentos de Flutter y Firebase
Lección 1 • Visión general de la estructura del proyecto Flutter
Examina la anatomía de un proyecto Flutter: carpetas, puntos de entrada y pubspec.yaml. Comprender esta estructura evita errores de configuración a lo largo del curso.
Lección 2 • Introducción a los servicios de Firebase
Examina los productos de Firebase —Auth, Firestore, Storage y Hosting— y sus funciones. Esta visión general enmarca qué servicio resuelve cada problema en capítulos posteriores.
Lección 3 • Fundamentos del lenguaje Dart para Flutter
Cubre la sintaxis de Dart, la seguridad nula y los patrones asíncronos necesarios para escribir aplicaciones Flutter. Estos fundamentos del lenguaje sustentan cada widget y llamada a Firebase que veremos.
Lección 4 • Conectar Flutter a Firebase
Añade Firebase a un proyecto Flutter usando FlutterFire CLI y archivos de configuración de plataforma. Una conexión verificada aquí es el prerrequisito para todos los capítulos de funcionalidades de Firebase.
Lección 5 • Configurar el entorno de desarrollo
Instala Flutter SDK, Dart, Android Studio y las extensiones de VS Code. Esta configuración base permite cada ejercicio de codificación posterior en el curso.
Capítulo 2OcultarOcultar detallesVer detallesDominio del sistema de widgets de Flutter
Dominio del sistema de widgets de Flutter
Lección 1 • Formularios y entrada del usuario
Construye formularios validados usando TextFormField, el widget Form y GlobalKey. El manejo de formularios se reutiliza directamente en el capítulo de autenticación de Firebase.
Lección 2 • Widgets con y sin estado
Distingue cuándo usar StatelessWidget frente a StatefulWidget y gestiona el estado local con setState. Esta elección impulsa la reactividad de la interfaz de usuario en cada pantalla construida posteriormente.
Lección 3 • Navegación y enrutamiento
Implementa rutas con nombre y Navigator 2.0 para aplicaciones multipantalla. Una arquitectura de navegación adecuada soporta los flujos de autenticación y los enlaces profundos introducidos en capítulos posteriores.
Lección 4 • Widgets de diseño principales
Usa Column, Row, Stack, Container y Expanded para componer pantallas. Dominar los widgets de diseño es esencial antes de construir interfaces de usuario de listas y formularios impulsadas por Firebase.
Lección 5 • Listas, cuadrículas y vistas de desplazamiento
Renderiza datos dinámicos con ListView.builder, GridView y CustomScrollView. Estos patrones son la base para mostrar los resultados de las consultas de Firestore.
Capítulo 3OcultarOcultar detallesVer detallesAutenticación de Firebase
Autenticación de Firebase
Lección 1 • Navegación y guardas basadas en autenticación
Redirige a los usuarios según el estado de autenticación usando StreamBuilder y guardas de ruta. Proteger las pantallas del acceso no autenticado es un requisito crítico en producción.
Lección 2 • Conceptos básicos de Firebase Auth
Comprende la instancia de FirebaseAuth, el objeto User y el flujo de estado de autenticación. Estos conceptos son la columna vertebral de cada método de inicio de sesión cubierto en este capítulo.
Lección 3 • Autenticación con correo electrónico y contraseña
Construye pantallas de registro, inicio de sesión y restablecimiento de contraseña usando la autenticación de Firebase con correo electrónico/contraseña. Este es el método de autenticación más común y la plantilla para otros proveedores.
Lección 4 • Inicio de sesión con Google y redes sociales
Integra el inicio de sesión de Google usando el paquete google_sign_in y la vinculación de credenciales de Firebase. La autenticación social reduce la fricción y es necesaria para muchas aplicaciones en producción.
Lección 5 • Autenticación anónima y actualizaciones
Inicia la sesión de usuarios de forma anónima y actualízalos a cuentas permanentes sin pérdida de datos. Este patrón mejora la conversión de incorporación en aplicaciones del mundo real.
Capítulo 4OcultarOcultar detallesVer detallesModelado de datos en Cloud Firestore
Modelado de datos en Cloud Firestore
Lección 1 • Consultar y filtrar datos
Filtra, ordena y pagina datos de Firestore usando where(), orderBy() y startAfterDocument(). Las consultas eficientes reducen las lecturas y disminuyen los costos de Firebase.
Lección 2 • Operaciones CRUD en Flutter
Añade, lee, actualiza y elimina documentos usando el paquete cloud_firestore. Estas operaciones son los bloques de construcción de cada funcionalidad basada en datos.
Lección 3 • Fundamentos del modelo de datos de Firestore
Comprende las colecciones, documentos, subcolecciones y tipos de datos en Firestore. Un modelo mental correcto previene costosos rediseños de esquema más adelante en el proyecto.
Lección 4 • Mejores prácticas de modelado de datos
Aplica patrones de desnormalización, escritura en abanico y agregación a los esquemas de Firestore. Estos patrones garantizan el rendimiento a escala y minimizan los costos de lectura.
Lección 5 • Flujos en tiempo real e instantáneas
Suscríbete a datos en vivo usando snapshots() y StreamBuilder en Flutter. Las actualizaciones en tiempo real son la principal ventaja de Firestore sobre las API REST tradicionales.
Capítulo 5OcultarOcultar detallesVer detallesFirebase Storage y manejo de medios
Firebase Storage y manejo de medios
Lección 1 • Reglas de seguridad de Storage
Escribe reglas de seguridad de Storage para restringir el acceso a archivos por identidad de usuario y ruta. Las reglas adecuadas previenen brechas de datos y son necesarias antes del despliegue en producción.
Lección 2 • Descargar y mostrar archivos
Recupera URLs de descarga y muestra imágenes usando cached_network_image. Los patrones de visualización eficientes evitan llamadas de red redundantes y mejoran la experiencia de usuario.
Lección 3 • Arquitectura de Firebase Storage
Comprende los buckets de Storage, las rutas de referencia y las reglas de seguridad para archivos. Esta base previene el acceso no autorizado y las jerarquías de archivos desorganizadas.
Lección 4 • Subir archivos desde Flutter
Selecciona archivos con image_picker y file_picker, luego súbelos usando putFile() y putData(). La lógica de subida se reutiliza en las funcionalidades de foto de perfil y documentos.
Capítulo 6OcultarOcultar detallesVer detallesGestión de estado con Provider y Riverpod
Gestión de estado con Provider y Riverpod
Lección 1 • Probar la lógica de gestión de estado
Escribe pruebas unitarias para StateNotifiers y simula dependencias de Firebase con ProviderContainer. Una lógica de estado testeable reduce errores y acelera el desarrollo de funcionalidades.
Lección 2 • Conceptos básicos de Riverpod
Define proveedores, StateNotifiers y AsyncNotifiers usando la sintaxis de Riverpod 2.x. La seguridad en tiempo de compilación y la testabilidad de Riverpod lo convierten en la opción preferida para producción.
Lección 3 • Fundamentos de la gestión de estado
Contrasta setState, InheritedWidget y soluciones de terceros para entender cuándo se aplica cada una. Este contexto justifica las elecciones arquitectónicas realizadas a lo largo del capítulo.
Lección 4 • Integrar flujos de Firebase con Riverpod
Expón flujos de Firestore y Auth como StreamProviders consumidos por los widgets de Flutter. Este patrón desacopla la interfaz de usuario de Firebase y permite una arquitectura limpia.
Lección 5 • Inmersión en el paquete Provider
Usa ChangeNotifier, ChangeNotifierProvider y Consumer para compartir estado entre widgets. Provider es la solución de nivel de entrada y un trampolín hacia Riverpod.
Capítulo 7OcultarOcultar detallesVer detallesReglas de seguridad de Firestore e integridad de datos
Reglas de seguridad de Firestore e integridad de datos
Lección 1 • Control de acceso basado en autenticación
Restringe el acceso a documentos usando request.auth y comparaciones de UID de usuario. Estos patrones implementan el aislamiento de datos por usuario en aplicaciones multiinquilino.
Lección 2 • Fundamentos de las reglas de seguridad
Aprende la sintaxis de las reglas, las declaraciones match y las condiciones allow para Firestore. Comprender el motor de reglas es obligatorio antes de escribir cualquier regla de producción.
Lección 3 • Validación de datos en reglas
Valida los tipos de datos entrantes, los campos obligatorios y los rangos de valores dentro de las reglas. La validación del lado del servidor previene datos mal formados incluso cuando se elude el código del cliente.
Lección 4 • Probar y desplegar reglas
Usa Firebase Emulator Suite y Rules Playground para probar las reglas antes del despliegue. Las pruebas de reglas automatizadas detectan regresiones y reducen los incidentes de seguridad en producción.
Capítulo 8OcultarOcultar detallesVer detallesFuncionalidades avanzadas de Firebase y despliegue
Funcionalidades avanzadas de Firebase y despliegue
Lección 1 • Notificaciones push con FCM
Envía notificaciones push dirigidas y basadas en temas usando Firebase Cloud Messaging. Las notificaciones impulsan la reinteracción y son necesarias en la mayoría de las aplicaciones de consumo.
Lección 2 • Construir y desplegar la aplicación
Configura compilaciones de lanzamiento, firma y canalizaciones de CI/CD para Android e iOS. Un proceso de despliegue repetible es el paso final antes de llegar a los usuarios reales.
Lección 3 • Remote Config y pruebas A/B
Sirve configuración dinámica de aplicaciones y ejecuta experimentos usando Firebase Remote Config. Las banderas de funcionalidad y las pruebas A/B permiten lanzamientos seguros sin actualizaciones de la tienda de aplicaciones.
Lección 4 • Firebase Analytics y Crashlytics
Registra eventos personalizados con Firebase Analytics y captura fallos con Crashlytics. Los datos de observabilidad impulsan las decisiones de producto y reducen el tiempo medio de resolución.
Lección 5 • Cloud Functions para Firebase
Escribe y despliega Cloud Functions HTTP y activadas por Firestore usando Node.js. Las funciones manejan la lógica del lado del servidor que no debe ejecutarse en el dispositivo del cliente.
Tu certificado válido de finalización
Este curso es para ti:
Desarrolladores web con curiosidad por construir aplicaciones móviles nativas con Flutter.
Estudiantes de ingeniería informática que buscan experiencia real en integración de backend.
Profesionales freelance que desean ampliar su oferta de servicios al desarrollo móvil.
Fundadores de startups que quieren prototipar y lanzar su propio producto móvil.
Desarrolladores backend preparados para adentrarse en el desarrollo front-end multiplataforma.
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... agradezco todo lo que hacéis, ya os he recomendado a otras personas...

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

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

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

Principales capacitaciones
Preguntas frecuentes
¿Quién es Dedika?
¿El certificado es válido en España?
¿Los cursos son gratuitos?
¿Cuál es la carga lectiva 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 coste o precio de los cursos?
¿Qué es un curso EAD u online y cómo funciona?
Curso en PDF




















