Python de Cero a Experto / Ruta backend
Reto: la capa de datos de una API
El corazón de toda API es su lógica CRUD: crear, leer, actualizar y borrar registros de forma confiable. Hoy
construyes esa capa de datos completa para Mi Bolsillo con sqlite3 —corriendo en vivo— con validación
incluida, tal como viviría dentro de un service de FastAPI. Luego, la solución muestra cómo se envuelve en
endpoints FastAPI. Es el núcleo real de un backend: la lógica que persiste y protege los datos.
Reto
Capa de datos CRUD
Qué debes construir
Una clase RepositorioGastos que gestione gastos en una base de datos SQLite, con validación:
__init__: conecta a una base en memoria y crea la tablagastos(id, nombre, valor, categoria).crear(nombre, valor, categoria): valida (nombre no vacío, valor positivo; lanzaValueErrorsi no) e inserta, devolviendo el gasto creado con su id.listar(categoria=None): devuelve todos los gastos, o los de una categoría si se indica.obtener(gasto_id): devuelve un gasto por id, oNonesi no existe.actualizar(gasto_id, valor)yborrar(gasto_id): modifican/eliminan un registro.
Reglas
- Usa parámetros
?en el SQL (nunca f-strings con datos: inyección SQL). - Valida en
crearlanzandoValueErrorcon mensaje claro. - Devuelve diccionarios (no filas crudas) para que sea fácil convertir a JSON.
35:00
Cuando estés listo, arranca el reloj.
Qué sigue
Módulo 8 conquistado: dominas la ruta de backend con FastAPI —APIs, validación, bases de datos, auth, estructura y tests—. Puedes construir el servidor de cualquier aplicación. El módulo 9 abre la última ruta y una de las más demandadas: DATOS E IA —NumPy, Pandas, visualización y machine learning—, donde Python es el rey indiscutible. Y lo mejor: NumPy y Pandas corren aquí mismo, en vivo.