Używa deskryptorów i dekoratorów do odwołują zależności zewnętrzne i zakresów w celu określenia sposobu ponownego użycia przedmiotów.
Zależności można odwoływać się od typów i opcjonalnych adnotacji.
Nie jest wymagana żadna konfiguracja, ale zaawansowana konfiguracja w-kod jest możliwe.
Większość innych narzędzi wtryskowych zależność python, takie jak PyContainer lub wiosennym Pythonie, są porty z innych języków (Java). Tak więc są one oparte na sposób iniekcji zależność specyficznych dla statycznie typowanych języków.
Python nie jest Java, a więc wzory i techniki programowania, które wydają się właściwe i możliwe do wykorzystania w jednym języku, może być niewygodne w innym.
Wstrzyknąć został stworzony w celu zapewnienia pythonic sposób iniekcji zależność, wykorzystując określone funkcje Pythona.
Terminologia stosowana w inject został celowo podobne do Guice jednak architektura wewnętrzna jest inna
Opis .
- Szybki, tylko 2-3 razy wolniej tego bezpośredniego konkretyzacji.
- normalny sposób instancji obiektów klasy (* args, ** kwargs).
- Wstrzykiwanie argumenty do funkcji i metod.
- Odwoływanie zależności od rodzaju i ewentualnych opisów.
- Wiązanie callables, instancji i metod niezwiązanych (patrz [nvokers).
- Zakres Zapytanie middleware dla WSGI i Django aplikacji (wymaga python2.5 +).
- Nie wymaga konfiguracji w ogóle.
- Zaawansowane elastyczna konfiguracja możliwe
- Dwie metody wtrysku, deskryptor i dekorator,
- Wsparcie dla dziedziczenia przekazując inject.super jako wartość domyślna kwarg
- Invokers zadzwonić metody niezwiązanych (fajne dla słuchaczy)
- Częściowe zastrzyki, gdy tylko niektóre argumenty są wstrzykiwane:
- Zakresy: aplikacja (pojedyncza), wniosek, noscope
- Łatwa integracja istniejących projektów.
Co nowego w tym wydaniu:.
- Usunięto IntelliJ pliki idea
Komentarze nie znaleziono