Práctica · Bloque 3
Compón la aplicación sin ocultar el flujo
Routers, dependencias, settings y recursos con ciclo de vida demostrable.
Starter, código, ejecución y evidencia
La actividad principal ocurre en el editor
Descarga el starter, ejecuta el baseline, modifica la API y conserva una prueba positiva y otra negativa. Las pocas actividades de análisis están marcadas de forma explícita; no cuentan como implementación.
Unidad 3.1 · Ensayo y checkpoint
Separa responsabilidades conservando el contrato
El diff mueve código, pero status, body, modelos de salida, operationId y paths públicos permanecen estables.
- Extraer el primer router sin cambiar el contratoUna aplicación de expedientes ya tiene tests y tres operaciones públicas, pero main.py mezcla arranque, schemas, estado y rutas.Abrir
- Separar routers y schemasRecibes una API distinta a la del ejemplo: registra solicitudes de cumplimiento, permite consultarlas y tomar una decisión. Funciona y está probada, pero vive en un único módulo.Abrir
Antes y después de practicar
Antes: Calcula las rutas finales a partir de los prefijos y dibuja la dirección de imports antes de mover una línea.
Transferencia: Ante otra aplicación monolítica, puedes decidir qué separar ahora, qué dejar junto y cómo demostrar compatibilidad.
Unidad 3.2 · Ensayo y checkpoint
Haz visible el árbol y el ciclo de vida
OpenAPI conserva sus parámetros, la configuración falla pronto y el recurso se libera tanto en éxito como en error.
- Construir y observar un árbol de dependenciasDos ramas de una consulta de informes repiten headers y normalización de correlación. El contrato funciona, pero no permite observar ni reutilizar el requisito común.Abrir
- Validar settings y sustituirlos en testsUna API publica información operativa desde constantes codificadas. Los tests modifican globals y dependen del orden en que se ejecutan.Abrir
- Demostrar el ciclo de vida de un recursoUna ruta abre y cierra manualmente un audit sink. Otro endpoint omite el cierre al lanzar una excepción y la prueba solo comprueba el status.Abrir
- Proporcionar contexto, settings y auditoríaRecibes una API distinta a la del ejemplo: registra solicitudes de cumplimiento, permite consultarlas y tomar una decisión. Funciona y está probada, pero vive en un único módulo.Abrir
Antes y después de practicar
Antes: Dibuja el árbol desde la operación hasta cada proveedor y predice cuáles se ejecutan una vez por petición, una vez por proceso o alrededor de la respuesta.
Transferencia: Ante una sesión, un cliente HTTP o un usuario actual, puedes decidir qué debe vivir por petición, por proceso o fuera de Depends y cómo probarlo.