6.1Casos concretos
Lo esencial en 30 segundos
- Fijar : el seguimiento de gastos encadena funciones → dataclass + JSON → venv + pytest → FastAPI → Docker + CI hasta el despliegue.
- Automatizar : el informe CSV semanal injerta pandas, gráfico Matplotlib, cron con logs y envío por e-mail sobre estos fundamentos.
- Entregar : venv reconstruido, requirements fijado, pruebas en verde y logs verificados el primer mes.
Hilo Nabil — un año después : dos proyectos que funcionan en Argel
Nabil, data analyst junior en Argel, repasa sus dos proyectos destacados del año : el seguimiento de gastos nacido cuaderno consola convertido en API desplegada, y luego el informe semanal de ventas CSV totalmente automatizado. Los dos casos siguientes retoman su encadenamiento : dividir, tipar, probar, aislar, entregar.
Cada caso sigue el desarrollo Contexto → Etapas → Resultado : repítelo en tus proyectos.
Ensamblar las piezas
Los niveles anteriores pusieron las piezas (bases, estructuras, POO, errores, módulos, venv, pruebas, web, data, despliegue) ; aquí las ensamblamos en condiciones reales : partimos de una necesidad concreta, dividimos, tipamos, probamos, aislamos y entregamos. Dos casos desarrollados de la A a la Z.
Caso 1 — Seguimiento de gastos : del cuaderno a la API desplegada
Contexto: El proyecto hilo : un seguimiento de gastos nacido cuaderno consola (N1), vuelto persistente (N2), probado (N3), expuesto en API (N4) y desplegado (N5).
Déroulé :
- N1 : funciones añadir/listar/total, menú main(), 80 líneas divididas.
- N2 : dataclass Gasto, JSON vía pathlib, try/except en la entrada.
- N3 : módulos + venv + requirements, hints, pruebas pytest del total.
- N4 : FastAPI (GET/POST) para exponer los gastos.
- N5 : Dockerfile slim, CI ruff + pytest, despliegue en cada push.
Resultado: Una URL que lista tus gastos, probada en CI, redesplegada en cada push.
Caso 2 — Informe semanal automatizado de un CSV
Contexto: Cada lunes, una exportación CSV de ventas debe convertirse en un resumen cifrado enviado por e-mail.
Déroulé :
- pandas : leer, inspeccionar (isna), groupby por ciudad, top 5.
- Matplotlib : una barra con título-mensaje, exportación PNG.
- Script planificado (cron) con logging + try específicos, probado en copias.
- E-mail del resumen + PNG adjunto, logs verificados el primer mes.
Resultado: Cero lunes manual : el informe llega solo, con sus logs.
Guion listo para decir — enmarcar un proyecto Python antes de programar (30 s)
« Nuestra necesidad : [seguimiento de gastos expuesto en API]. Nuestros cimientos : [funciones divididas + hints + pytest + venv]. Persistimos en JSON, exponemos en FastAPI, entregamos vía Docker + CI. »
Modelo copiar-pegar — API de seguimiento mínima (FastAPI)
from fastapi import FastAPI
from pydantic import BaseModel
app = FastAPI()
depenses: list[dict] = []
class Depense(BaseModel):
motif: str
montant: float
@app.get("/depenses")
def lister() -> list[dict]:
return depenses
@app.post("/depenses", status_code=201)
def ajouter(depense: Depense) -> dict:
item = depense.model_dump()
depenses.append(item)
return item
TPE / presupuesto pequeño
Un solo caso repetido sobre una necesidad simple : seguimiento de un recurso, informe CSV mínimo, despliegue directo.
Pyme Argel
Adaptar el despliegue a las realidades locales : puestos compartidos, picos del lunes, copias de seguridad y responsable designado.
Remoto / híbrido
Duplicar la trazabilidad a distancia : requirements fijado documentado, pipeline CI y accesos escritos.
Intercultural
Verificar los usos locales antes de trasladar un caso : títulos, ciudades y reglas de agrupación deben hablar al equipo.
Desafío 48h — aplica mañana
Toma 1 proyecto real y escribe su cadena en 5 tiempos (dividir → tipar → probar → aislar → entregar). Identifica el próximo paso.
- Sé ensamblar las piezas en una aplicación completa, del cuaderno a la API desplegada.
- Tengo un modelo FastAPI reutilizable para mi proyecto.
- Hice el desafío 48h o planifiqué su fecha.
Nabil hace crecer su seguimiento de gastos hasta la API desplegada. ¿Qué encadenamiento respeta la guía ?