Envíanos tu consulta
Términos y condiciones *
*Si no puedes asistir en directo te facilitaremos un enlace para verlo en diferido
logoImagina
Formación
Modalidades
Próximas Convocatorias
Temario
FAQ
Solicitar información
iconoCurso

Curso de Desarrollo Backend con Python y Flask

DISPONIBLE EN MODALIDAD:
aMedidaIcon
Aula Virtual Personalizada
arrowRightDark

Aprende a crear aplicaciones Web API extensibles y mantebibles con Python y Flask aplicando las mejores prácticas de desarrollo en la actualidad

iconClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClient

Formación en Desarrollo Backend con Python y Flask bonificable para empresas

A quién va dirigido nuestro curso de Desarrollo Backend con Python y Flask

Desarrolladores Backend que quieran aprender a crear aplicaciones Web API extensibles y mantebibles con Python y Flask

Objetivos de nuestro curso de Desarrollo Backend con Python y Flask

  • Aprender los fundamentos del framework Flask para crear aplicaciones web
  • Desarrollar aplicaciones Web API con Flask y aprender a documentarlas
  • Gestionar y administrar el modelado de datos, sistema de enrutado y seguridad
  • Aplicar buenas prácticas de arquitectura y testing
  • Gestionar y administrar builds y despliegues

Qué vas a aprender en nuestro curso de Desarrollo Backend con Python y Flask

Aprende a crear aplicaciones Web API extensibles y mantebibles con Python y Flask aplicando las mejores prácticas de desarrollo en la actualidad

Requisitos de nuestro curso de Desarrollo Backend con Python y Flask

  • Experiencia previa desarrollando con Python (v3 o superior) y conocimiento de sus fundamentos
  • Tener un equipo con acceso a un usuario con permisos de instalación donde poder realizar el curso
  • Tener Python 3, Git y Visual Studio Code o Pycharm instalados en el equipo previamente

Temario del curso de Desarrollo Backend con Python y Flask

tema 1

Introducción Flask

  • ¿Qué es Flask?
  • Flask en la actualidad y tipos de proyectos más destacables
  • Diferencias sustanciales con Django y Flask como alternativas a Flask
  • Instalación de Python en su versión LTS de manera oficial
  • Verificando la versión de Python instalada en el equipo
  • ¿Es posible tener varias versiones de Python instaladas en un equipo?
  • Creación de tu primer proyecto Flask desde Pycharm
  • Instalación de Flask con PIP
  • Estableciendo librerías instaladas en requirements.txt
  • Hola Mundo en Flask
  • Estableciendo la ruta base de nuestra web API
  • Plugins imprescindibles y recomendados de Pycharm
  • Ejecución local del proyecto Flask
  • Accediendo por navegador a la ruta base del proyecto
  • Otros IDEs con los que podemos desarrollar con Flask
  • Entornos de Desarrollo Online: Replit.com
  • Creación de cuenta en Replit.com
  • Creación de un proyecto Flask en Replit.com a partir de plantillas disponibles
  • Escribiendo tu primer "Hola Mundo" en proyecto Flask de Replit.com
  • Ejecutando el archivo main.py desde entorno Replit.com
  • Compartiendo proyecto Replit
  • Integración de Replit.com con Github
  • Descargando proyecto Replit en formato .ZIP
  • Creación de plantilla de proyectos Flask para Github
  • Empleando la plantilla para nuevos proyectos Flask
iconArrowDown
tema 2

Desarrollo de Web APIs con Flask

  • Creación y configuración del archivo principal de Flask
  • Creación de la ruta base de nuestro proyecto Flask
  • Especificando el puerto de despliegue
  • Especificando respuestas JSON
  • Especificando el código de estado a nuestra respuesta
  • Desplegando la aplicación y accediendo desde el navegador
  • Iniciando Postman y probando la ruta base del proyecto
  • Introducción a la estructura de proyectos Flask
  • Introducción a las variables de entorno
  • Estableciendo archivos de variables de entorno
  • Declaración de variables de entorno
  • Configuración de archivo .gitignore
  • Publicando proyecto Flask en Github
  • Estableciendo ramas de desarrollo y producción
iconArrowDown
tema 3

Peticiones, Sistema de Enrutado, Controladores y Respuestas

  • Análisis de los verbos HTTP: GET, POST, PUT y DELETE
  • Otros verbos HTTP y sus utilidades
  • Recibiendo peticiones desde un cliente
  • Especificando una ruta "/api" como base para nuestro proyecto
  • Declaración de rutas en un proyecto Flask
  • Declarando una misma ruta para distintos verbos
  • Accediendo a la cabecera de la petición
  • Accediendo al cuerpo de la petición
  • Configurando la respuesta al cliente
  • Distintos tipos de respuestas: Texto, JSON y HTML
  • Recepción de parámetros por Query Params
  • Redirección de rutas
  • Estructura de proyectos Flask
  • ¿Qué es un controlador?
  • Declaración de controladores en proyectos Flask
  • Indicando el uso de un controlador
  • Depurando la ejecución de un controlador
  • Reutilización de controladores
  • Buenas prácticas en la estructuración de rutas y controladores
iconArrowDown
tema 4

Gestión de Peticiones y respuestas CRUD

  • Estableciendo una base de datos lite como introducción
  • Creación de rutas para peticiones de Creación (C)
  • Códigos de estado para creaciones exitosas y erróneas
  • Redirección de rutas para devolver elemento creado correctamente
  • Creación de rutas para lectura y consultas con Query Params (R)
  • Códigos de estado para lecturas exitosas y erroróneas
  • Creación de rutas para peticiones de Actualización (U)
  • Códigos de estado para actualizaciones exitosas y erroróneas
  • Creación de rutas para peticiones de Borrado (D)
  • Códigos de estado para borrados exitosos y erroróneas
iconArrowDown
tema 5

Persistencia en bases de datos relacionales: PostgreSQL

  • Introducción a bases de datos relacionales
  • Instalación y configuración básica de PostgreSQL
  • Iniciando servidor PostgreSQL localmente
  • Usando herramientas de vislauzación de datos de PostgreSQL: BeeKeeper
  • Configuración en proyecto Flask para conexión con PostgreSQL
  • ¿Qué es un ORM? Ventajas e inconvenientes.
  • Utilización de un ORM (Sequelize)
  • Operaciones CRUD en proyecto Flask con PostgreSQL como base de datos
  • Dockerización de proyecto Flask con PostgreSQL
  • Introducción a Render como solución cloud
  • Creación de una cuenta gratuita en Render
  • Creación y configuración básica de una base de datos PostgreSQL en Render
  • Conexión desde Flask con PostgreSQL de Render
  • Añadiendo variables de entorno al proyecto para las conexiones y api keys
iconArrowDown
tema 6

Persistencia en bases de datos NoSQL: MongoDB

  • Introducción a bases de datos no relacionales
  • Breve introducción a MongoDB
  • Colecciones y documentos BSON
  • Instalación y configuración básica de MongoDB
  • Iniciando servidor MongoDB localmente y especificando ubicación "dbpath"
  • Iniciando Mongo Shell como cliente
  • Introducción a Mongo Compass
  • Iniciando Mongo Compass para visualizar bases de datos y colecciones
  • Accediendo a Mongo Shell desde Mongo Compass
  • Validación y modelado de datos
  • ¿Qué es un ODM?
  • Ventajas e inconvenientes en el uso de ODMs
  • Utilización de un ODM (Mongoose)
  • Operaciones CRUD en proycto Flask con MongoDB como base de datos
  • Dockerización de proyecto Flask con MongoDB
  • Introducción a Mongo Atlas como solución cloud
  • Creación de una cuenta gratuita en MongoDB para usar Mongo Atlas
  • Creación y configuración básica de una base de datos MongoDB en Mongo Atlas
  • Conexión desde Flask con Mongo DB Atlas
  • Añadiendo variables de entorno al proyecto para las conexiones y api keys
iconArrowDown
tema 7

Middlewares

  • ¿Qué es un Middleware y qué uso podemos darle?
  • Declarando Middlewares en un proyecto Flask
  • Espeficicando el uso de un Middleware en una ruta de nuestro proyecto
  • Depuración de código middleware
  • Redirección de rutas
  • Buenas prácticas en la gestión de Middlewares
iconArrowDown
tema 8

Autenticación y autorización

  • Middlewares de autenticación
  • Introducción a JWT y a los Bearer Tokens
  • Configuración de Middleware y rutas para autenticación por JWT
  • Controlando los JWT emitidos por el cliente en las cabeceras
  • Controlando las sesiones de usuario y caducidad de los JWT
  • Añadiendo un sistema RBAC para controlar el acceso
  • Introducción al sistema de autenticación OAuth
  • Diferencias entre OAuth y OAuth2
  • Configuración de Middleware y rutas para autenticación por OAuth
  • Controlando las sesiones de usuario de OAuth
  • Persistiendo la información de sesiones en bases de datos
  • Introducción a la autenticación con redes sociales
  • Realizando pruebas de autenticación y protección de rutas
iconArrowDown
tema 9

Gestión de Errores desde el Servidor

  • Análisis de los códigos de estado HTTP en las respuestas
  • Códigos de estado de Error más comunes
  • ¿Cómo transmitir un error al cliente?
  • Gestión de errores 300
  • Gestión de errores 400
  • Gestión de errores 500
iconArrowDown
tema 10

Documentación de proyecto Flask con Swagger

  • Documentando la puesta en marcha de un proyecto Flask en un README.md
  • Introducción a OpenAPI y a Swagger
  • Instalación y configuraciones esenciales
  • Documentación de modelos
  • Documentación de rutas y controladores
  • Añadiendo comentarios para mayor información
  • Script de generación de documentación Swagger y despliegue
  • Visualización de documentación vía web
  • Realizando pruebas de peticiones desde la documentación generada
iconArrowDown
tema 11

Consideraciones de seguridad en aplicaciones Flask

  • ¿Qué es CORS y por qué debemos configurarlo?
  • Configuración recomendada de CORS
  • Problemas derivados de una mala configuración de CORS
  • ¿Cómo habilitar HTTPS localmente?
  • Trabajando con certificados localmente
  • Desplegando en https un proyecto local
  • Módulos vulnerables y desactualizados en Python que pueden afectarnos
  • Protección ante ataques de fuerza bruta
  • Protección ante ataques de denegación de servicios
  • Protección ante ataques de SQL Injection
  • Protección ante ataques de JSON Injection
  • Uso seguro de cookies y protección ante ataques CSRF
iconArrowDown
tema 12

Logs, health checks y monitorización

  • La importancia del buen uso de logs en aplicaciones web
  • Soluciones de Logs disponibles para Flask
  • Instalaciones y configuraciones en Flask para gestión de logs
  • Herramientas más interesantes de análisis de logs disponibles en el mercado
  • Emisión de logs desde nuestra aplicación
  • Niveles de logs y buenas prácticas
  • Persistiendo logs en una tabla de la base de datos
  • ¿Qué son los health checks y por qué debemos realizarlos?
  • Creación de health checks para aplicaciones Flask
  • Introducción a la monitorización de aplicaciones web
  • Herramientas más interesantes para la monitorización de recursos y rendimiento
  • Habilitando la monitorización de una aplicación Flask
iconArrowDown
tema 13

Comunicación en tiempo real

  • ¿Qué son los WebSockets y para qué sirven?
  • Introducción a Socket IO y sus fundamentos
  • Instalación y configuración de Socket IO
  • Implementación de websockets
  • Comprobando la comunicación bidireccional
iconArrowDown
tema 14

Builds y Despliegues

  • Analizando el proceso de builds y entornos en Flask
  • Configuración y definición de carpeta para builds en Flask
  • Creación de Scripts de builds para distintos entornos
  • Análisis de resultado de una build
  • Creación de un proyecto Flask en Render
  • Asociando un proyecto Render a una rama de repositorio Github
  • Configuración y scripts para el despliegue de proyectos Python en Render
  • Configurando variables de entorno y api keys en el proyecto Render
  • Automatizando la integración (CI) desde Render
  • Comprobando despliegues y probando la aplicación Flask en producción
  • Gestión de errores, rollbacks y redespliegues en Render
iconArrowDown

Preguntas Frecuentes de Desarrollo Backend con Python y Flask

¿Cuáles son los Beneficios del curso Desarrollo Backend con Python y Flask?

accordionIcon
El curso te proporcionará conocimientos sólidos y prácticos en el desarrollo de aplicaciones web backend utilizando Python y Flask. Aprenderás a manejar bases de datos, crear APIs, y a gestionar la arquitectura de aplicaciones, lo que mejorará la eficiencia y la escalabilidad de tus proyectos.

¿El curso de Desarrollo Backend con Python y Flask se puede bonificar a través de FUNDAE?

accordionIcon
Sí, el curso es bonificable a través de FUNDAE, lo que permite a las empresas recuperar parte del coste de la formación, facilitando así que más empleados puedan acceder a este tipo de capacitación.

¿En qué modalidades se imparte el curso de Desarrollo Backend con Python y Flask?

accordionIcon
El curso se imparte en modalidad online o en aula virtual personalizada, ofreciendo flexibilidad para adaptarse a las necesidades y horarios de las empresas.

¿Qué habilidades desarrollaré con el curso de Desarrollo Backend con Python y Flask?

accordionIcon
Desarrollarás habilidades técnicas específicas en Python y Flask, incluyendo la creación y gestión de aplicaciones web, la integración de bases de datos, y la implementación de APIs RESTful, así como buenas prácticas de desarrollo y trabajo en equipo en proyectos backend.

¿Cómo puedo inscribirme en el curso de Desarrollo Backend con Python y Flask?

accordionIcon
Puedes inscribirte en el curso rellenando los formularios que aparecen en la web. Una vez completado el formulario, te contactaremos para finalizar el proceso de inscripción y proporcionarte toda la información necesaria para comenzar el curso.