일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 안드로이드 디자인패턴
- 깃
- Observable
- mock
- Python
- ViewModel
- MVVM
- UnitTest
- compose
- 자료구조
- 안드로이드
- Android
- 유닛테스트
- 코딩테스트
- rxjava
- 파이썬
- 컴포즈
- 단위테스트
- 제한함수
- git
- Room
- 디자인패턴
- 테스트의 장점
- 공격적 프로그래밍
- Di
- dagger2
- Jetpack
- Kotlin
- 안정성
- 코틀린
- Today
- Total
세상을 바꾸는 개발자
[Android] 안드로이드 디자인패턴 3 - 2 MVP패턴 본문
안녕하세요! 헬창코딩입니다. 지난 시간에는 MVC패턴에 대해서 알아봤는데요
이번 시간에는 MVP패턴에 대해서 한번 알아보도록 하겠습니다.
MVC 패턴은 Model, View, Controller로 이루어져 있다면
MVP 패턴은 Presenter라는 새로운 녀석이 등장합니다.
그 이유는 MVC 모델의 단점인 뷰와 모델에 의존적이 의존적이라는 것을 해결하기 위해서 추가되었습니다.
Presenter란 무엇일까요??
Presenter는 이전 시간에 나왔던 Controller와 비슷하다고 생각하실 수 있지만 뷰에 직접 연결되는 것이 아니라
인터페이스로 연결이 됩니다. 그렇기 때문에 MVC 패턴에서 문제가 되었던 결합도가 높고 유닛 테스트를 하기 힘든 단점을
보완할 수 있습니다. 또한 Presenter는 View와 Model의 인스턴스를 가지며 이 둘을 연결해 주는 역할을 하므로
Presenter와 view는 1:1 관계를 갖습니다.
나머지 Model과 View에 대해서는 이전 게시물을 참고해주세요~
https://healthcoding.tistory.com/12
[Android] 안드로이드 디자인패턴 3 - 1 MVC패턴
안녕하세요! 헬창코딩입니다. 오늘은 디자인 패턴에 대해서 알아보도록 하겠습니다.!! 먼저 mvc패턴은 안드로이드 아키텍처에서 가장 많이 쓰여왔으며 기본이 되는 디자인 패턴입니다. MVC 패턴
healthcoding.tistory.com
MVP 패턴의 장점
위에서 말씀드렸던 것과 같이 MVP패턴은 View와 Model 간의 의존성이 없고 , UI와 비즈니스 로직을 분리해
유닛 테스트가 수월합니다.
MVP 패턴의 단점
View와 Presenter 간의 의존성이 높고 1:1 관계를 유지해야 하고 Presenter를 재사용할 수 없어, View가 늘어날 때마다
Presenter도 같이 늘어나 클래스가 많아집니다. 또한 애플리케이션의 기능이 추가될 수 록 Presenter가 거대해지는 단점이 있습니다.
MVP 기본적인 구조

오늘은 MVP 모델에 대해서 알아봤습니다.~ 다음에는 안드로이드 앱 개발 시 가장 많이 사용하는 MVVM 패턴에 대해 알아보겠습니다.
'안드로이드 > Design Pattern' 카테고리의 다른 글
Delegate Pattern - kotlin (by를 사용해서 쉽게) (1) | 2022.03.05 |
---|---|
[Android] 안드로이드 디자인패턴 3 - 3 MVVM패턴 (0) | 2021.07.12 |
[Android] 안드로이드 디자인패턴 3 - 1 MVC패턴 (0) | 2021.07.09 |
[Android] 안드로이드 설계원칙 (2) | 2021.07.07 |
[Android] 애플리케이션 앱설계와 원칙은? (0) | 2021.07.06 |