• 카테고리

    질문 & 답변
  • 세부 분야

    모바일 앱 개발

  • 해결 여부

    해결됨

repository 를 거쳐서 Api 를 가져오는 이유

23.02.17 00:02 작성 조회수 307

0

 SelectViewModel 에서 Api를 바로 호출하지 않고

repository 거쳐서 가는게 관리하기 편해서라고 하셨는데

이해가 잘 가지 않아서요..

바로 호출하면 어떤 불편한 점이 있나요?

답변 1

답변을 작성해보세요.

0

안녕하세요

좋은 질문이네요! 저도 처음에 의문을 품었던 것입니다.

예를 들어보겠습니다.

코인 데이터를 가져와서 api호출해서 가공하는 coinEditingFunction이 있다고 가정해보겠습니다.

그럼

A-viewModel 에서 coinEditingFunction 를 선언해서 localDB 에 저장하고

B-viewModel 에서 coinEditingFunction 를 선언해서 foreground service에 보여준다고 가정하면

 

이 coinEditingFunction 가 중복으로 선언됩니다.

때문에, 이런 과정을 한곳에 몰아넣기 위해 repository에서 처리하도록 한 것입니다.

 

지금은 A / B ViewModel 2개 밖에 없지만 실무에서는 이런 상황에 너무 복잡하고 어렵게 꼬이기 때문에 한곳에 만들어놓고 관리한는 것입니다.

 

coinEditingFunction 이 변경되어도 어디에서 선언되었는지 모두 변경해줄 필요가 없이 한곳만 변경하면 되니깐요!

 

이와 관련해서 클린아키텍처로 가면 useCase 으로 분류(layer)를 나눠서 사용하기도 합니다.

 

추가적인 질문 있다면 더 문의주세요~

 

뿌지징님의 프로필

뿌지징

질문자

2023.02.17

아 그래서 따로 만들어두고 관리하는 것이군요

이해했습니다 감사합니다!!