Какой паттерн используется в FastAPI
Python
Junior
Без компании
Какой паттерн используется в FastAPI
Ответы
FastAPI активно использует **Dependency Injection (DI)** — это основной паттерн для управления зависимостями, внедрения сервисов и повторного использования кода.
Пример:
```
from fastapi import Depends, FastAPI
app = FastAPI()
def get_db():
db = "database_connection"
yield db
@app.get("/items/")
def read_items(db: str = Depends(get_db)):
return {"db": db}
```
**Почему DI?**
- Упрощает тестирование (зависимости легко подменить).
- Позволяет повторно использовать логику (например, аутентификацию).
- Четкое разделение ответственности.
Также FastAPI использует **Pydantic** для валидации данных (паттерн **Data Transfer Object**).