DI (依存性注入) についての私の見解は、これは依存性注入というよりも依存性管理であるということです。実際、それは、composer や pip などのより高いレベルにある程度似ています。 、および maven. アプリケーションとライブラリ間の依存関係を管理するためのツール. DI フレームワークは次の利点をもたらします (前提条件は優れた DI フレームワークです): (推奨される学習: PHP ビデオ チュートリアル )
#設定を通じて依存インターフェイスの実装を変更します。これは DI 機能の最も基本的かつ中心的な機能でもあります。
依存実装のインスタンス スコープを柔軟に制御します。シングルトン、スレッドごとに 1 つ、各リクエストなど
#依存パラメータ、依存依存関係などの管理コードは次のとおりです。より簡潔で、ロジックが明確になります
モックはテストに便利です。1
一般的には、接続することです。アプリケーション内の関数ブロックから関数ブロックへ、およびクラス間の依存関係は、統合されたフレームワークを通じて一元管理されます
優れた DI フレームワーク:Laravel はシンプルですエレガントな PHP Web 開発フレームワーク (PHP Web フレームワーク)。
ヌードルのような乱雑なコードから解放され、完璧なネットワーク APP を構築するのに役立ち、コードの各行を簡潔かつ表現力豊かにすることができます。
Laravel には、高度な PHP ActiveRecord 実装である Eloquent ORM がすでにあります。関係の両側に「制約」を簡単に適用できるため、データを完全に制御し、ActiveRecord の利便性をすべて享受できます。 Eloquent は、Fluent のクエリ ビルダー (クエリ ビルダー) のすべてのメソッドをネイティブにサポートします。
Laravel には優れたコミュニティ サポートがあります。 Laravel コード自体の表現力と優れたドキュメントにより、PHP プログラミングが楽しくなります。
リッチ拡張パッケージBundle は、Laravel の拡張パッケージの名前です。完全な ORM のような大きなものから、デバッグ ツールのような小さなものまで、何でも構いません。あるいは、コピーして貼り付けるだけで拡張機能をインストールできます。 Laravel の拡張パックは世界中の開発者によって提供されており、常に拡張パックが追加されています。
GITHUB でホストされるオープンソースLaravel は完全にオープンソースです。すべてのコードは Github で入手できますので、ぜひ貢献してください。
PHP 関連の技術記事をさらに詳しく知りたい場合は、
PHP グラフィック チュートリアル以上がPHPの依存関係注入の利点の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。