無意味なInterface
具象が1つだけならInterfaceで抽象化する必要はない
Interfaceを作ることで、複雑さが増す
記述量が増える
誰も全く嬉しさを享受していない
業務のmrsekut.iconが触っていない箇所がこれになってた
無駄に全部Interface用意しているけどなんの意味も為していない
記述量が増えているだけ
複雑度が上がっているだけ
IDEのgo to definitionもInterface側に飛んでいくので、その意味でもやりづらいだけ
しかし、間接層はもろ刃の剣であることに注意しなければなりません。1つのものを2つに分割するということは、それだけ管理しなければならない部分が増えるということなのです。また、オブジェクトが、他のオブジェクトに委譲を行って、その先もさらに委譲を繰り返すような場合、プログラムが読みにくくなるのも事実です。つまり間接層は、最小限に絞り込むべきなのです。 ref
ポリモーフィズムもあまりせず、レイヤーがあり、機能の筋道が決まっている場合、ほとんど意味がない
いつ向いてるか? チームを分断してるとき?ポリモーフィズムを多用するとき?ドメインモデリングをしてるとき、とかかな?
レイヤー、一本道で決まっている、修正箇所、再利用しない、など
/mrsekut-book-4839981728/297 (8.4 インターフェイスを使った依存の抽象化)
unmanaged dependencyに対しては、mockを作るためにinterfaceを作る