MVC에서 파생된 Model과 View 간의 의존성이 없는 아키텍처 패턴
MVP는 Model + View + Presenter를 말한다.
MVP 패턴의 동작 순서는 아래와 같다.
Presenter는 View와 Model의 인스턴스를 가지고 있어 둘을 연결하는 접착제 역할을 한다.
Presenter와 View는 1:1 관계이다.
View와 Model의 의존성이 없다. MVP 패턴은 MVC 패턴의 단점이었던 View와 Model의 의존성을 해결했다. (Presenter를 통해서만 데이터를 전달 받기 때문에..)
MVC 패턴의 단점인 View와 Model 사이의 의존성은 해결되었지만, View와 Presenter 사이의 높은 의존성을 가지게 되는 단점이 있다. 애플리케이션이 복잡해 질 수록 View와 Presenter 사이의 의존성이 강해진다.
View와 Presenter가 1:1 관계이기 때문에 서로 간 의존성이 커짐
필요한 클래스 개수가 많음