Він використовує дескрипторів і декоратори посилання на зовнішні залежності, і області, щоб визначити, як використовувати об'єкти.
Залежності можна посилатися за типами і додаткових анотацій.
Ніякої налаштування не потрібно, але додаткова настройка в-коду можливо.
Більшість інших інструментів для ін'єкцій пітон залежність, такі як PyContainer або навесні Python, порти з інших мов (Java). Таким чином, вони засновані на ін'єкції залежностей способів, характерних для статично типізованих мовах.
Python НЕ Java, а так моделі і методи програмування, які, здається, правильне і використовувати на одній мові, може бути незручно в інший.
Вводять був створений, щоб забезпечити віщий спосіб впровадження залежностей, використовуючи спеціальні функції Python.
Термінологія, що використовується в Inject був навмисно виконані аналогічно Guice, проте внутрішня архітектура відрізняється
Особливості :.
- Швидко, всього в 2-3 рази повільніше, ніж прямий примірників.
- нормальний спосіб примірників об'єктів, клас (* аргументи, ** kwargs).
- ін'єкційних аргументи у функціях і методах.
- Посилання залежності від типів і додаткових анотацій.
- Прив'язка до викликаються об'єктів, екземпляри і незв'язаних методів (див [nvokers).
- Запит обсяг проміжне ПО для WSGI і Django додатків (потрібно python2.5 +).
- Немає конфігурації не потрібно взагалі.
- Розширений гнучка конфігурація можливо
- Два методи ін'єкції, дескриптор і декоратор
- Підтримка спадкування, передавши inject.super як значення за замовчуванням kwarg
- Invokers зателефонувати незв'язаних методів (холодний для слухачів)
- Часткові ін'єкції, коли тільки деякі аргументи вводять:
- Області застосування: застосування (Singleton), прохання, noscope
- Проста інтеграція в існуючі проекти.
Що нового У цьому випуску :.
- Вилучено IntelliJ файли ідея
Коментар не знайдено