Software engineer
· 20.06Dependency Injection в python
Dependency Injection — это подход, при котором объект получает зависимости извне, а не создаёт их самостоятельно. Такой принцип снижает связанность компонентов, упрощает тестирование, делает архитектуру гибче и напрямую поддерживает принципы SOLID.
В экосистеме python есть мощный DI-фреймворк — python-dependency-injector: https://github.com/ets-labs/python-dependency-injector. Он написан на cython — благодаря этому работает заметно быстрее обычного python-кода.
Многие воспринимают python как язык для автоматизации, анализа данных, ML или быстрых прототипов. Но на практике есть полноценные продукты с бекендом на python, которые работают под серьёзной нагрузкой, где использование подходов вроде DI может быть крайне полезным.
Пару лет назад использовать dependency-injector в продакшене было рискованно — проект не обновлялся около двух лет, не было ясности, жив ли он вообще. Сейчас всё иначе: фреймворк активно развивается, регулярно выходят релизы. Это хороший знак.
Если ещё не использовали — сейчас самое время попробовать. Гибкая архитектура в python вполне возможна.
еще контент автора
еще контент автора
Software engineer
· 20.06войдите, чтобы увидеть
и подписаться на интересных профи