[過去ログ] スレ立てるまでもない質問はここで 156匹目 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
853(3): 2021/05/30(日)14:49 ID:x7z1bfzn(1/2) AAS
DI(dependency injection)について質問です
どうも存在価値がわからないのです
世間一般ではよく使われているので、自分の理解が足りていないのは自覚しています。
DIの何が便利なのかを教えてほしいです。
kotlinの以下の記事を使わせて頂きます。
外部リンク:qiita.com
この記事には以下の3種類のコードが提示されています。
・1.依存性の注入が無いAndroidのコード例
・2.DIを使わずに書いた場合
・3.DIを使って書く
省8
854(1): 2021/05/30(日)15:01 ID:DbVDrryp(5/5) AAS
>>853
DIを文字通り依存関係を注入するものだと思っているからわからない
下手なやつが使うと日付オブジェクトまで外部から注入しようと考えるからアホらしいw
DIは基本的にビジネスロジックに使うもの
DIを理解する前に前に適切な設計というのを理解しないといけない
適切な設計というのはクラスごとの役割・責務がちゃんと分離されているということ
そういう場合にこのクラスのビジネスロジックは、別のクラスのビジネスロジックを"利用する"という時に、
別のクラスをテスト用のクラスに差し替えられるようにしておけば、別のクラスを使わずに単体テストが可能になる
テストというのはなるべく小さな状態で行うもの。そうしないとどこに原因があるのかわかりづらくなる
テストクラスへの差し替えが簡単にできる言語であればDIは必要ないが
省1
855(1): 2021/05/30(日)15:07 ID:McAyMcZB(1/2) AAS
>>853
君の疑問はもっともで、この記事が悪い
ArticleServiceが具象クラスなら特にDIを使って注入する意味はない
DIする場合、普通ArticleServiceはinterfaceにしておいて、場合によってバックエンドAPIからArticleを取得する実装と、テスト用のモック実装とを差し替えたりする
863: 2021/05/30(日)16:18 ID:Hj1QGeYh(1/2) AAS
おまえら・・・
酷いな
>>853
参照する記事が悪すぎる
とりあえずwikipediaを読んで分からなかったら戻ってくればいい
外部リンク:ja.wikipedia.org依存性の注入
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.035s