DIコンテナ

プログラミングデザインパターン

DIとは?

 状態:-  閲覧数:1,430  投稿日:2009-07-10  更新日:2017-10-19  
英語表記
・Dependency Injection

依存性の注入
・オブジェクト生成時に他のオブジェクトを注入している形式
・クラス外でインスタンスを生成して、クラス外から引数として渡す
・コンポーネント間の依存関係をプログラムのソースコードから排除し、外部の設定ファイルなどで注入できるようにするソフトウェアパターン


DI導入メリット


クラスの単体テストがしやすくする


DI実装


コンポーネント間の関係
・インタフェースを用いて記述

コンストラクタ内でインスタンス生成を行わなくなる

引数として(Interfaceをimplementsしたクラスの)インスタンスを受け取るようになる


DIコンテナとは?


英語表記
・DI Container
・Dependency Injection Container

DI処理をコンテナの変数にまとめ、シンプルにする
・依存性を定義してコンテナという形で保管しておく
・そのコンテナを取り出すだけで依存関係を処理できるようになる
・新しいオブジェクトを作成する際、DI コンテナが自動的に依存をインスタンス化し、新しく作成されたオブジェクトに注入して、 依存を解決する

アプリケーションにDI機能を提供するフレームワーク
・「DI」と呼ぶデザインパターンに基づいて作られたコンポーネント群を集中管理するためのソフトウエア

DIコンテナを使用しないと?
・使用する度に毎回依存性のあるものを生成して注入しなければいけない

Twitter検索結果。「DIコンテナ」に関する最新ツイート

にと @niton_uoa29
える 【ついった無課金プレイヤー】 @ellnore_pad_267
える 【ついった無課金プレイヤー】 @ellnore_pad_267

デザインパターン

コメント投稿(ログインが必要)



類似度ページランキング
順位 ページタイトル抜粋
1 コンテナフォーマット 50
2 コンテキスト 50
3 VPAID 36
4 ワンライナー 33
5 OpenID 33
6 コネクション 33
7 コーディング 31
8 DNSレコード 31
9 コンポーネント 31
10 UI 25
11 テンプレートエンジン 25
12 アッパーコンパチブル 25
13 システムインテグレーター 22
14 API 22
15 DMZ 22
16 エンタープライズシステム 22
17 コミット 20
18 ドングル 20
19 CRUD 20
20 デーモン 20
2023/2/06 2:54 更新