그냥 존나 쉽게 설명해줌


1.도메인 모듈(요구하는 것)


->포트가 필요하다고 말함. 포트는 특정 기능을 제공해야한다라는 계약(인터페이스)를 정의함. 도메인은 이 계약이 어떤 형식으로 이행될지는 관심없음


2. data모듈(구현하는 측)


-> 도메인 모듈에 정의된 계약을 가져와서, 만들어줌


3. app 모듈(연결하는 측)


-> DI(의존성 주입)을 통해서 data 모듈보고 도메인 모듈이 필요할때 구현한거 가져와달란거임



도메인 모듈이 계약서를 공개함-> data 모듈은 이걸 보고 구현해둠->app은 도메인 모듈에게 입찰 받아서 그때그때 필요한 구현체를 가져다 씀


어렵게 생각할게 전혀 없음


나는 이걸 원청이론이라고 나만의 방식으로 이해하는데


도메인은 원청(클라이언트)


data는 숨고,크몽,위시캣 같은 중개 앱


app은 나같은 하청 이렇게 생각함