Что такое FastAPI
FastAPI — это Python-фреймворк для разработки веб-API. Он использует аннотации типов Python для проверки входных данных, преобразования значений и генерации OpenAPI-документации.
Особенности FastAPI
работает на ASGI и подходит для асинхронных обработчиков;
использует Pydantic-модели для валидации данных;
автоматически создаёт Swagger UI и ReDoc-документацию;
хорошо подходит для REST API, микросервисов и backend for frontend.
Отличие от Flask
Flask — лёгкий и минималистичный WSGI-фреймворк. Он даёт маршрутизацию и базовые возможности, а валидацию, схемы данных и документацию обычно подключают отдельными библиотеками. FastAPI предлагает эти API-возможности более цельно и использует типы Python как основу контракта.
Отличие от Django
Django — более полный веб-фреймворк: у него есть ORM, миграции, админ-панель, аутентификация, шаблоны и множество встроенных компонентов. FastAPI более сфокусирован на API и обычно сочетается с отдельными библиотеками для ORM, миграций и администрирования.
Как ответить на собеседовании
FastAPI — это современный фреймворк для создания API на Python с валидацией на основе type hints и автодокументацией OpenAPI. Flask более минималистичный, а Django предоставляет полный набор средств для веб-приложения; FastAPI чаще выбирают для API-сервисов и асинхронных сценариев.