안녕하세요. 점냥입니다:) 이번 포스팅에서는 MVP 아키텍처 패턴에서 Model에 관하여 알아보려고 합니다. 구글의 Blueprints v2 다양한 아키텍처 샘플 코드와 안드로이드 개발자 사이트의 예제를 보면 데이터를 관리하는 부분의 클래스 이름이 Model이 아니란 것을 느낄 수 있다. data, source 등 새로운 개념이 등장하여 이것이 모델인가?라는 의문이 필자도 들었다. 해당 개념은 Repository Pattern이라는 디자인 패턴 개념이다. Repository Repository pattern은 Model에 대해서 관심사 분리를 수행한 개념이라고 할 수있습니다. MVP에서 Model이랑 데이터를 요청하고 받는 Presenter는 최대 관심사가 뭘까요? 바로 View에게 넘겨줄 Data를 받..
MVP Architecture MVP는 Model과 View, Presenter로 나누는 패턴이다. MVC와 비교하여 View와 Model이 서로 존재를 몰라 의존성이 줄어든다. 이말은 쉽게 View와 Model 클래스를 변경, 수정할 수 있고 MVC에 비해 Model 클래스의 유닛 테스트를 쉽게 시도할 수 있다. Model Local DB, Remote DB, sharedPreference .. 등 데이터를 수정, 관리하는 Class Presenter 사용자의 액션을 받아 로직을 처리하고, Model에게 Data 변경을 요청하거나 UI 업데이트하는 로직을 처리하는 Class ViewContract : View and Presenter의 설계 사용자 액션을 Presetner에 떠넘기고, UI 업데이트하는..