반응형
Repository Patten이란?
간략하게 말아서 데이터 출처(로컬 db인지, 원격 db인지)와 관계 없이 동일 인터페이스로 데이터에 접속할 수 있도록 만드는 것을 Repository Pattern이라고 한다.
MVVM으로 따지면 ViewModel 밑에 Repository라는 계층을 하나 더 두어서 ViewModel이 오직 비즈니스 로직에만 집중할 수 있게 한다.
(데이터를 로컬과 서버 중 어디서 가져올지, 또 어떻게 가공할지는 Repostitory가 하기 때문입니다.)
그리고 CleanArchitecture로 가정하면 Domain 계층의 UseCase 밑에 Repository라는 계층을 하나 더 두어, Usecase가 오직 비즈니스 로직에만 집중할 수 있게 한다.
장점을 정리하면 다음과 같다.
Repository Pattern의 장점
- 결합도를 낮출 수 있다.
- 도메인 객체를 persistence ignorant 하게 할 수 있다.
- 정의된 인터페이스를 구현하는 mock에 DI 할 수 있으므로 테스팅하기 쉽다.
참고자료:
https://eunjin3786.tistory.com/198
[Design Pattern] Repository패턴이란
[1] Repository 패턴이란 데이터 출처(로컬 DB인지 API응답인지 등)와 관계 없이 동일 인터페이스로 데이터에 접속할 수 있도록 만드는 것을 Repository 패턴이라고 합니다. - viewModel 밑에 Repository라는 lay
eunjin3786.tistory.com
반응형
'Clean Architecture' 카테고리의 다른 글
[Clean Architecture] 만들면서 배우는 클린 아키텍처 9장 (0) | 2023.06.27 |
---|---|
[Clean Architecture] iOS 클린 아키텍처 실제 프로젝트 3: DI(의존성 주입) (0) | 2023.06.12 |
Coodinater Pattern 정의 및 예제(1) (0) | 2023.05.08 |
클린 아키텍쳐 정리 및 예제 (0) | 2023.04.27 |