Tecnologías a usar

Categoría Tecnología Descripción
Lenguaje Python Lenguaje de programación principal. Permite crear la lógica del sistema, manejar datos y desarrollar la API que se conectará con la base de datos.
Backend Flask Microframework web para Python. Te permite crear endpoints (rutas) para que el frontend o clientes externos se comuniquen con tu sistema.
Base de datos (BD) PostgreSQL Sistema de gestión de bases de datos relacional robusto, ideal para manejar grandes volúmenes de datos como el de todos los alumnos.
ORM SQLAlchemy ORM (Object Relational Mapper) que permite interactuar con la base de datos usando clases y objetos de Python en lugar de SQL puro. Facilita migraciones y consultas complejas.
Validación/Serialización Marshmallow Convierte datos de Python a JSON y viceversa, además de validar los datos entrantes para asegurar que cumplan con los formatos requeridos.
Testing unittest Framework de pruebas unitarias de Python. Sirve para comprobar que cada componente del código funcione correctamente de forma aislada.
Consulta de API Postman Herramienta para probar la API enviando solicitudes HTTP (GET, POST, PUT, DELETE) y verificando las respuestas.

Conceptos

Endpoints URLs específicas que reciben solicitudes HTTP (GET, POST, PUT, DELETE) para realizar operaciones.
Modelos (Models) Clases que representan las tablas de la base de datos. Con SQLAlchemy, cada modelo define las columnas y relaciones de una tabla.
Controladores (Controllers) Lógica de negocio que maneja las operaciones en respuesta a una solicitud, como recibir datos, validarlos y procesarlos.

Esenciales

SQLAlchemy (ORM)

Flask SQLAlchemy CRUD con MySQL

Flask (Framework para el backend en Python)

Python Flask y Mysql Aplicación Web | Aplicación de Ejemplo

Pruebas unitarias para trabajar con TDD

Python TDD Workflow - Unit Testing Code Example for Beginners

Extra I

Python & PostgreSQL

Python & PostgreSQL - Psycopg2 Tutorial

Docker (virtualizar proyecto)

Aprende Docker ahora! curso completo gratis desde cero!


Extra II

Cómo Crear Diagramas UML con IA y PlantUML: Guía Completa

herramienta de código abierto que utiliza descripciones textuales simples para dibujar hermosos diagramas UML.