Python Web & Scripts — Django, FastAPI, скрипты

Flask ломают не роуты, а скрытые зависимости между модулями

Flask ломают не роуты, а скрытые зависимости между модулями

В маленьком проекте Flask удобно, пока всё лежит в одном файле. Проблемы начинаются, когда view импортирует сервис, сервис тянет конфиг, а конфиг внезапно знает про БД и очередь. Дальше любой рефакторинг превращается в ручную сборку пазла.

Держите каркас, который спасает:
— app factory вместо глобального app
— extensions инициализируйте отдельно
— конфиг передавайте через объект, а не через import side effects
— бизнес-логику выносите из view в сервисы
— Blueprints используйте как границы, а не как помойку для всего подряд

Ещё одна типовая ошибка — класть в маршрут и валидацию, и SQL, и формат ответа. В итоге тестировать нечего: чтобы проверить один endpoint, надо поднять половину приложения. Если обработчик тонкий, его проще мокать, логировать и переиспользовать в CLI-скриптах.

Идея простая: Flask хорош там, где вы сами держите архитектурную дисциплину. Чем раньше разложите зависимости по слоям, тем дольше проект останется быстрым в разработке и спокойным в сопровождении.
Этот пост опубликован в Telegram-канале Python Web & Scripts — Django, FastAPI, скрипты. Подписаться можно по ссылке: @python_web_scripts.
tech

Свежие посты в категории «Tech Infrastructure»

Все каналы категории →

start

Готовы запустить рекламу через сеть public.tg?

Новый оффер, продукт, GEO, кейс, событие или партнёрский запуск — соберём маршрут под задачу и отдадим медиаплан.

Telegram для медиаплана: @AFFtop_connect. Быстрый тест: $20 за канал, $1000 за пакет по сети.