[Design Pattern] MVP & MVVM Pattern

먹보·2023년 3월 10일
0

MUK_BO's Design Pattern

목록 보기
9/9

✍ MVP Pattern

MVP 패턴은 MVC 패턴으로부터 파생되었으며 컨트롤러가 프레젠터로 교체된 패턴입니다.

📝 Presenter (프레젠터)

사실 단순한 정의를 내리자면 MVC 패턴의 컨트롤러와 비슷한 역할을 한다.

View에서 요청한 정보로 Model을 가공하여 View에 전달해 주는 부분입니다. View와 Model의 연결고리 역할을 합니다.

📝 장점

MVP 패턴의 장점은 View와 Model의 의존성이 없다는 것입니다. MVP 패턴은 MVC 패턴의 단점이었던 View와 Model의 의존성을 해결하였습니다. (Presenter를 통해서만 데이터를 전달 받기 때문에..)

📝 단점

MVC 패턴의 단점인 View와 Model 사이의 의존성은 해결되었지만, View와 Presenter 사이의 의존성이 강해져 어플리케이션이 복잡해 질 수록 View와 Presenter 사이의 의존성이 강해지는 단점이 있습니다.

✍ MVVM Pattern

MVVM 패턴은 마찬가지로 MVC 패턴으로부터 파생되었는데 컨트롤러가 뷰모델로 교체된 패턴입니다.

📝 View Model (뷰모델)

View Model이란 View를 표현하기 위해 만든 View를 위한 Model입니다. View를 나타내 주기 위한 Model이자 View를 나타내기 위한 데이터 처리를 하는 부분입니다.

📝 장점

MVVM 패턴은 View와 Model 사이의 의존성이 없습니다. 또한 Command 패턴과 Data Binding을 사용하여 View와 View Model 사이의 의존성 또한 없앤 디자인패턴입니다. 각각의 부분은 독립적이기 때문에 모듈화 하여 개발할 수 있습니다.

📝 단점

MVVM 패턴의 단점은 View Model의 설계가 쉽지 않다는 점입니다.

profile
🍖먹은 만큼 성장하는 개발자👩‍💻

0개의 댓글