これは、オブジェクトを再利用する方法を指定するための記述子と外部依存関係を参照するデコレータ、およびスコープを使用しています。
依存関係のタイプおよび任意のアノテーションによって参照することができる。
設定は不要、しかし高度でコード設定が可能です。
そのようなPyContainerやSpring Pythonなど他のほとんどのPython依存性の注入ツールは、他の言語(Java)のからのポートです。そこで、彼らは静的型付け言語のための具体的な依存性注入の方法に基づいています。
Pythonのは、Javaではなく、そのように適切な一つの言語で使用可能なように見えるパターンやプログラミング技術は、他の中で厄介であることができる。
注入は、特定のPythonの機能を利用し、依存性注入のPython的な方法を提供するために作成されている。
注入に使用される用語は、意図的にGuiceのに似てなされたものであり、しかし内部アーキテクチャが異なります。
の特長の:ます。
- ファスト、唯一の2〜3倍遅いことを直接インスタンス化します。
- オブジェクトをインスタンス化する通常の方法、クラス(* argsを、** kwargsから)します。
- 関数やメソッドに引数を注入します。
- の種類とオプションのアノテーションによる依存関係を参照します。
- ([nvokersを参照)を呼び出し可能オブジェクト、インスタンス、結合していないメソッドへのバインドします。
- Requestスコープミドルウェアます。
- なしの構成は全く必要ありません。
- 詳細柔軟な構成が可能します。
- 2つの注入方法、記述子およびデコレータます。
- デフォルトkwarg値としてinject.super渡すことによって、継承をサポートします。
- INVOKERS(リスナーのためのクール)、結合していないメソッドを呼び出すようにします。
- の部分噴射、:
- スコープ:アプリケーション(シングルトン)、要求、NOSCOPEます。
- 既存のプロジェクトに簡単に統合します。
- を削除IntelliJのアイデアファイル
WSGIとDjangoアプリケーション(のpython2.5 +が必要)ための
唯一のいくつかの引数が注入されている
の新しいのこのリリースでは何です。
コメントが見つかりません