🚀 ニフティ’s Notion

【モバイルアプリ2024 #10】Dependency Injectionについて

💡
この章で話すこと
  • Dependency Injectionとは
  • Dependency Inversion Principle とは
  • Hiltとは

[復習]Dependency Injection (依存性の注入)とは

ℹ️
【Webアプリ2024 #4】インターフェースとDependency Injection を参照

クラスが別のクラスに依存する場合、依存性を外部から渡すようにすること。

今回であればViewModelはRepositoryに依存しているので外部から注入している。

DIのメリット
  • クラスの再利用性の向上
  • 依存関係の分離
  • テストの容易性の向上

[復習]Dependency Inversion Principle(DIP, 依存関係逆転の原則)とは

依存性を下げるため、抽象に依存させる

ℹ️
【オブジェクト指向2024 #11】SOLID 原則 を参照

Androidでの実装方法

Androidでは自力実装しても良いが、 Hilt を使うことでボイラープレートを削減でき簡単に実現できます。

自力実装の例: