티스토리 뷰

Repository Pattern 

: Data의 출처에 관계 없이 동일한 인터페이스로 데이터를 접근할 수 있도록 하는 패턴이다. DataSource를 캡슐화 시킨다.

 

- Data Layer에 대한 의존성을 줄일 수 있다. 즉, Data Layer와 Presentation Layer 간의 Coupling이 줄어든다.

- Presentation Layer에서 Data Layer에 직접 접근하지 않으므로, 새로운 Data의 추가가 쉽다.

- Presentation Layer에서는 Repository에 데이터 요청만 하면 되므로, 일관된 인터페이스로 데이터를 요청할 수 있다.

- Unit Test를 통한 검증하기가 쉬워진다.

 

별도의 Repository 클래스를 사용한다.

 

 

UseCase 

: 서비스를 사용하고 있는 사용자(User)가 해당 서비스를 통해 하고자 하는 것을 의미한다.

 

사용하는 이유 ?

1. ViewModel이 어떤것을 하고자 하는지 직관적으로 파악할 수 있다.

2. 의존성을 줄일 수 있다.

 

UseCase의 사용법을 정리하자면

 

  • Domain Layer
    • Repository : interface. 구현부는 Data Layer.
    •  Use case : Repository를 사용.
  • Data Layer
    • RepositoryImpl : Domain Laye의 Repository 구현부.
    • CRUD(DataSource)를 사용하여 실제 데이터를 가져온다.
  • Presentation Layer 
    • ViewModel : UseCase를 사용.

 

 

1. ViewModel에서 UseCase 호출

2. UseCase에서 RepositoryImpl 호출

3. RepositoryImpl에서 데이터를 Return

4. UseCase 에서 return 받은 데이터를 ViewModel로 던짐

5. ViewModel에서 Return 받은 데이터를 사용.

 

 

의 흐름으로 UseCase를 사용하게 된다.

 

 

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함