Ответ вслух Junior FastAPI и Pydantic спрашивают часто обновлено

Почему FastAPI и как он работает

Вопрос

Почему для нового сервиса часто выбирают FastAPI и что он делает за вас?

Попробуйте сами

Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.

Показать ответ и разбор

Коротко

Образцовый ответ: «FastAPI превращает аннотации типов в работу: из сигнатуры обработчика и Pydantic-моделей он строит разбор параметров, валидацию с понятными ошибками 422, сериализацию ответа по responsemodel и OpenAPI-схему, по которой сразу есть интерактивная документация.

Что должно прозвучать в ответе

  • Валидация и сериализация по аннотациям через Pydantic

  • Автоматическая OpenAPI-документация

  • Dependency injection через Depends

  • ASGI и async из коробки, но и sync-обработчики в пуле потоков

  • Минимум магии, но нет встроенных ORM, админки, миграций

  • Сравнение с Django: что брать для какого проекта

Что могут спросить следом

  • Что вы возьмёте для ORM и миграций в проекте на FastAPI?
  • Когда вы выберете Django, а не FastAPI?

Разбор

Образцовый ответ: «FastAPI превращает аннотации типов в работу: из сигнатуры обработчика и Pydantic-моделей он строит разбор параметров, валидацию с понятными ошибками 422, сериализацию ответа по response_model и OpenAPI-схему, по которой сразу есть интерактивная документация. Зависимости через Depends дают удобный способ получить сессию БД, текущего пользователя, настройки и подменять всё это в тестах. Он работает поверх ASGI, поэтому асинхронный код и WebSocket доступны из коробки, а синхронные обработчики он выполнит в пуле потоков. Из минусов: это микрофреймворк, ORM, миграции, админку, авторизацию собираешь сам, обычно SQLAlchemy 2.0 и Alembic. Поэтому FastAPI беру для API-сервисов, микросервисов, ML-инференса, интеграций. Если нужен классический продукт с админкой, сложной моделью данных и быстрым стартом, Django с DRF даст больше готового».

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.