はじめに
はじめまして、森田と申します。
この記事はARISE analytics Advent Calendar 2023の11日目の記事になります。
普段、社内でポエムを書いてるんですが、
今回はその一部をQiitaに移植します。
本編 依存性逆転の社会実装例 ご飯編
10年前ぐらいは、外食の主な手段はお店まで行ってご飯を食べることだった。
つまり、人は外食をするときにお店に依存していることになる。
そこにUberというインターフェースができることによって依存が逆転することになる。
人は、Uberに依存して、お店もuberに依存することになった。
このUberを人のユーティリティの一つと考える(Dependency injection)と、
お店はuberを持っている人に依存していると考えられる。
Uberというインターフェースを作ることで、人がお店に依存している状態から、お店が人に依存しているように見える。
これがいわゆる依存性逆転。
依存性逆転による恩恵は、人は外食の種類ごとに行動を定義しなくても (あの店に行くとか、車、電車を使うとか)、uberというインターフェースで簡単に外食を取り寄せることができるようになる。
終わりに
このポエムは後輩が入社してSOLIDの五原則を学習してもらっている際に依存性逆転を理解しやすくするために考えたポエムでした。理解しにくい考え方も普段の生活を例にするとわかりやすくなりますよね!
何となく思いついた話なので、誰かもっとわかりやすくする観点とかあったら教えてもらえると嬉しいです!
以上!