Dependency Injector
pinject
Dependency Injector | pinject | |
---|---|---|
7 | 2 | |
3,601 | 1,342 | |
1.3% | - | |
0.0 | 10.0 | |
2 months ago | about 3 years ago | |
Python | Python | |
BSD 3-clause "New" or "Revised" License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Dependency Injector
-
Java 21 makes me like Java again
Nothing to do with the nature of the language, but with the nature of the program.
If you're writing a few line script, you don't need a DI container. Once your program gets large, it becomes extremely messy without one. It's no surprise projects like [1] exist.
[1] https://github.com/ets-labs/python-dependency-injector
-
Do You Use Singletons?
Totally agree with this. And I’ve found this pattern pairs really well with https://python-dependency-injector.ets-labs.org/
-
Compclasses: prefer composition over inheritance
dependency_injector: https://github.com/ets-labs/python-dependency-injector
-
Loosely coupled Python code with Dependency Injection
As projects continue to grow, its recommended to utilise a dependency injection framework to “inject” these dependencies, such as Dependency Injector, to inject dependency arguments automatically ✨.
-
What is the best practice for injecting configuration into a python application
One approach is to pass this config as a variable to every class it is required, which I dont prefer. Another option is to annotate the config class as singleton and create the config object at every place where I need them. I also came across this library called Dependency_Injector. https://python-dependency-injector.ets-labs.org/ This seems a bit heavy weight for my use case though. I am looking forward to know how other solve this problem
-
Dependency Injection and Python
Dependency Injector
-
Introduction to Dependency Injection in Python
dependency-injector (docs) is python library that provides a framework which enables you to implement DI and IoC in Python.
pinject
-
Compclasses: prefer composition over inheritance
pinject: https://github.com/google/pinject
-
Dependency Injection in Python?
Personally I am not a fan of DI, but I had good time using pinject. Easy to use, Pythonic. However, the issue is whether the project is dead or not (last stable release 2019, last commit on master 2020).
What are some alternatives?
django-rest-framework - Web APIs for Django. 🎸
antidote - Dependency injection for Python
kink - Dependency injection container made for Python
compclasses - Like dataclasses, but for composition
flask-restful - Simple framework for creating REST APIs
diay.py - Dependency injection library for Python.
falcon - The no-magic web data plane API and microservices framework for Python developers, with a focus on reliability, correctness, and performance at scale.
dependencies - Constructor injection designed with OOP in mind.
connexion - Connexion is a modern Python web framework that makes spec-first and api-first development easy.
serum - Dependency injection framework for Python 3.6
flask-api - Browsable web APIs for Flask.
Flask-Redis - A Flask extension for using Redis