그냥 존나 쉽게 설명해줌
1.도메인 모듈(요구하는 것)
->포트가 필요하다고 말함. 포트는 특정 기능을 제공해야한다라는 계약(인터페이스)를 정의함. 도메인은 이 계약이 어떤 형식으로 이행될지는 관심없음
2. data모듈(구현하는 측)
-> 도메인 모듈에 정의된 계약을 가져와서, 만들어줌
3. app 모듈(연결하는 측)
-> DI(의존성 주입)을 통해서 data 모듈보고 도메인 모듈이 필요할때 구현한거 가져와달란거임
즉
도메인 모듈이 계약서를 공개함-> data 모듈은 이걸 보고 구현해둠->app은 도메인 모듈에게 입찰 받아서 그때그때 필요한 구현체를 가져다 씀
어렵게 생각할게 전혀 없음
나는 이걸 원청이론이라고 나만의 방식으로 이해하는데
도메인은 원청(클라이언트)
data는 숨고,크몽,위시캣 같은 중개 앱
app은 나같은 하청 이렇게 생각함
1,2까지 이해했고 , 3은 잘 모르겠음. 그리고 궁금한게 , 님이 코드 구조 잘 때 구현하려고 하는 앱이든 뭐든 기능별로 분류를 해야되잖아 ? 그 기준을 어떤식으로 잡는거임 ?
그게 경험의 영역이지. 나는 그냥 남이 만든거에서 우선 가져와서 생각함. 그니까 이미 비슷한 시장에 있는거 가져와서 분류함
@ㅆㅇㅆ(113.192) 비슷한 종류의 앱이 없어서 참조도 안되내 ㅋㅋㅋ 일단 친절하게 설명해줘서 정말 고마워
글 되게 못쓰네 차라리 개발자면 코드로 설명하자
이렇게 크기가 커지면 이제 코드 단순히로 이야기 할 수가 없어
이렇게 자기 시간 써가면서 친절히 설명해주는걸로 난 너무 고마움 ㅇㅇ
현실의 모사만큼 좋은 이해가 없긴하지 모든것을 대변해주진 못하지만
그걸 프로토콜이라고 불러
맞지