Специализация Frontend (React + TypeScript) в разработке — пока доступен backend-контент. Что планируется во frontend-треке →

FastAPI

Раздел про FastAPI: структура и конфигурация, Depends, роутинг, Pydantic v2, async, middleware, фоновые задачи, SQLAlchemy, безопасность, тесты, наблюдаемость. Примеры на Python.

Зачем для UCP. FastAPI — механика Python-биндинга UCP-сервиса, как Spring для Java: без понимания Depends, Pydantic, async, сессий и безопасности нельзя осознанно писать Handler-ы и интегрировать инфраструктуру на Python. Часть пути продукт-инженера.

Раздел разбит на 11 статей. Можно читать подряд (фундамент → конкурентность и сквозная логика → данные и безопасность → эксплуатация) или точечно.

Фундамент

  1. Структура приложения и конфигурацияFastAPI(), APIRouter, lifespan, pydantic-settings, раскладка проекта.
  2. Dependency Injection: Depends — дерево зависимостей, yield-зависимости, переопределение в тестах.
  3. Роутинг и обработка запросов — path operations, параметры, response_model, статус-коды.
  4. Pydantic: валидация и сериализация — модели v2, валидаторы, ошибки, модели запроса и ответа.

Конкурентность и сквозная логика

  1. Async и конкурентностьasync def vs def, threadpool, async-клиенты, ловушки event loop.
  2. Middleware и обработка ошибок — middleware, обработчики исключений, сквозная логика.
  3. Фоновые задачи и расписаниеBackgroundTasks и его границы, внешняя очередь/планировщик.

Данные и безопасность

  1. Персистентность: SQLAlchemy + Alembic — async-сессии, транзакции, миграции.
  2. Безопасность — OAuth2, JWT, зависимости-как-guards, scopes.

Эксплуатация

  1. ТестированиеTestClient/httpx, pytest, фикстуры, переопределение зависимостей.
  2. Наблюдаемость — логи, OpenTelemetry, метрики, health-checks.

Связанное