Clean Architecture 達人に学ぶソフトウェアの構造と設計 - Robert C.MartinでIO型を考える
IOをusecaseに漏らしたくない(純粋関数に保ちたい)ときは、controllerからAPI叩いちゃう or 間にもう1階層挟むという解決策が考えられる https://chatgpt.com/share/6825ee2b-9880-8002-9e14-09f3d6eb94ff
graph TD
呼び出し関係
Controller --> AppService
AppService --> UseCase
UseCase --> Domain
実装 → 抽象(依存逆転)
ApiClientImpl -.-> ApiPort
RepoImpl -.-> RepoPort
%% 備考: Domainは純粋なので他に依存しない
一休は前者(controllerで呼び出しちゃう)
https://youtu.be/qBf910_YiqA