본문

[2017.11.30] 28. MVP 개념

도입

이번 포스팅에서는 MVP 패턴을 정리 할 예정이다. 개념을 알아보기 전 각각 패턴을 확인해보니 더 도움이 되었다.



개념

MVP 패턴은 Model - View - Presenter를 의미하는 패턴이다.

(출처 - https://en.wikipedia.org/wiki/Model–view–presenter)


설명과 같이 MVP 패턴은 MVC 패턴에서 파생된 패턴이다. 또한, MVP 패턴의 핵심은 interface를 사용해 View와 Presenter 사이의 컴파일 의존성을 끊어주는 것이다. (※ MVP 아키텍쳐만으로는 상호 의존성 존재)


MVP 패턴의 관계 흐름

그림과 같이 

1) View는 View에서 필요한 기능을 인터페이스(IView)정의한 후 구현한다.

2) Presenter는 Presenter에 필요한 기능을 인터페이스(IPresenter)로 정의한 후 구현한다.

3) 구현한 객체들은 서로의 객체를 생성하고 상호 의존성을 가지게 된다.


MVP의 장점은 

1) M, V, P 역학을 분담하므로 유지보수가 편리하다.

2) MVC와 비교할 때 Model과 View간의 의존성이 없다.



#MVP패턴 #MVP #면접

공유

댓글