[Kotlin Side Project] Clean Architecture 구현
2022. 3. 4. 17:29ㆍKotlin/Kotlin Side Project
- CA를 적용한 프로젝트 구조를 생성
- entity : 가장 안쪽의 레이어로, 프레임워크의 제약을 받지 않는 plain object로 구성
- domain : 비지니스 로직을 처리하는 레이어
- data : 데이터를 처리하는 레이어
- presentation : UI를 처리하는 레이어
- CA 적용은 presentation, data -> domain -> data 방향으로만 의존성이 성립이 되므로, 내부 레이어는 외부 레이어에 대해 알 필요가 없다.(알아서는 안된다.) data -> domain 에서는 이를 구현하기 위해 domain 영역에 repository의 interface를 생성해 DI(의존성 주입)을 통한 의존성 역전을 필요로 한다.
- presentation -> domain 시, presentation은 domain의 UseCase만을 사용
- data -> domain 시, data는 domain의 repository interface만을 사용
'Kotlin > Kotlin Side Project' 카테고리의 다른 글
[Kotlin Side Project] Dagger2 적용 (1) | 2022.03.21 |
---|---|
[Kotlin Side Project] Paging3 적용(Offline-first) (0) | 2022.03.04 |
[Kotlin Side Project] 구현 목표 (1) | 2022.03.04 |
[Kotlin Side Project] RemoteMediator 무한 로딩 (0) | 2021.11.18 |
[Kotlin Side Project] RemoteMediator 키 관리 (1) | 2021.11.17 |