MVP?
- 1990년대 초기에 MS에 공개한 패턴
- MVC와 다르게 MVP는 Model과 View간의 결합도를 낮출 수 있다.
user event update model
view ---------------> presenter ---------------> Model
<--------------- <---------------
update view state-change event
- View : 사용자의 실질적인 이벤트가 발생하고, 이를 처리 담당자인 Presenter로 전달
- 완전한 View의 형태를 가지도록 설계
- Presenter : View에서 전달받은 이벤트를 처리 후 이를 View에 전달
- View와 Model을 이어주는 역할
- Model : Data를 불러오거나, Cache
- Data의 전반적인 부분을 model에서 담당하고, 네트워크, 로컬 데이터 등을 포함
MVP의 단점?
- Class 하나만으로 전체 코드를 알 수 없다.
- interface의 양이 많아진다.
- 메소드 카운트 증가 (메소드 카운트 증가는 multidex)
- 익숙해지기 전까지 구조가 복잡할 수 있다.
각각이 하는 일 별
- 1. View에서 사용자의 입력을 받는다. View에서 터치 이벤트 발생
- 2. View -> Presenter : Presenter로 이벤트 전달
- 3. Presenter : View에서 요청한 이벤트 처리
- 4. Presenter -> View : 처리한 결과를 View로 전달
- 5. View : 처리된 결과를 바탕으로 UI를 갱신
'# 02 > 코틀린' 카테고리의 다른 글
[Kotlin] 반복문 (0) | 2019.07.18 |
---|---|
[Kotlin] MVP Model 구성 (0) | 2019.07.15 |
[Kotlin] MVC 패턴 소개 1 (0) | 2019.07.15 |
[Kotlin] Architecture (0) | 2019.07.15 |
[Kotlin] SAM Class (0) | 2019.07.15 |