Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Flutter_Firebase.pdf

 Flutter_Firebase.pdf

Introducción a los servicios de Firebase presentando un caso de uso de un proyecto interno de la empresa.

Avatar for Gabriela Oropeza

Gabriela Oropeza

October 21, 2019

More Decks by Gabriela Oropeza

Other Decks in Programming

Transcript

  1. Acerca de • Venezuela • Gorilla Logic • Full Stack:

    ◦ Android (Java/Kotlin) ◦ Javascript (React/NodeJS) ◦ Python & Ruby • Agile • Viajar es mi hobbie
  2. Agenda • Caso de Uso • Introducción a las tecnologías

    • Servicios Firebase ◦ Proyecto ◦ Hosting ◦ Autenticacion ◦ Firestore ◦ Functions ◦ Storage • Demo
  3. Caso de Uso: Tiquetes digitales • Situación: Semanalmente se imprimen

    tiquetes para canjear por beneficios: comida, bebidas, etc; llevando un control manual de los tiquetes entregados y canjeados. • Propuesta: Realizar un canje a través de un app y llevar el control en la nube.
  4. Introducción a las tecnologías • Firebase: es una plataforma para

    soportar el desarrollo de aplicaciones móviles y web, creada en el 2011. Adquirida por Google en el 2014. Hoy en día, la plataforma Firebase posee 18 productos, usados por alrededor de 2 millones de apps. • Flutter: es un kit para desarrollar interfaces visuales, open-source, creado por Google. La visión es que pueda usarse para desarrollar aplicaciones para escritorio, web, móviles y otros. • Gitlab: es una herramienta web para DevOps que provee: repositorios Git, wiki, traqueo de tiquetes y CI/CD, open-source.
  5. Servicios Firebase: Crear el proyecto • Son menos de 5

    clicks y solo necesitas pensar en un buen nombre. • La consola web te permite configurar todo el backend de una forma sencilla. • Un proyecto firebase es un proyecto GCP. • El dashboard te muestra estadísticas, logs, notificaciones, links a la documentación y mas.
  6. Firebase CLI • El CLI nos va a permitir interactuar

    con nuestro proyecto firebase desde nuestro ambiente de desarrollo. • Lo primero que tenemos que hacer es loguearnos con nuestra cuenta google. • Ahora podemos inicializar la conexión con nuestro proyecto firebase, esto nos generará un archivo firebase.json.
  7. Servicios Firebase: Registrar apps • Flutter nos funciona para generar

    android y iOS apps con un mismo código. Sin embargo, la configuración con firebase se hace por aparte. • React es la aplicación web donde vamos a configurar el sistema. La hosteamos en firebase.
  8. Servicios Firebase: Hosting • Configuramos la carpeta del build generado

    por nuestra web app. • También necesitamos la configuración de rewrite para que podamos resolver las rutas correctamente. • Tenemos subdominios configurados por defecto pero podemos fácilmente configurar nuestro propio dominio.
  9. Servicios Firebase: Autenticacion • Email, password • Email templates •

    Redes sociales • Autorización de dominios • Firebase SDK • FirebaseUI Auth
  10. Servicios Firebase: Firestore • NoSQL, cloud-hosted, real-time, multi plataforma, modo

    offline, escalable. • Los paths son Rest-like. • Los datos se estructuran en colecciones que contienen documentos. • Existen “sub-colecciones”, asociados a colecciones. • Toma en cuenta el plan de cobro al diseñar tu esquema.
  11. Servicios Firebase: Cloud functions • Código backend en la nube.

    • 10 tipos de triggers. • Soporta typescript. • “Callable functions” simplifica usar llamar funciones desde nuestra app usando el SDK. Automáticamente deserializa el cuerpo del request y valida el token de autenticación.
  12. Demo: Generar códigos QR • Queremos asociar beneficios a través

    de un código QR. • La idea es que al crear un nuevo beneficio generemos un código QR asociado de forma automatica. • Para eso, creamos un cloud function con un trigger de firestore.
  13. Q&A