-
Notifications
You must be signed in to change notification settings - Fork 0
MVVM vs MVP #8
Copy link
Copy link
Open
Description
MVVM 과 MVP의 뜻과 구조는 이후 정리하여 추가하겠습니다.
두 패턴중 MukMap에 더 적당하다고 생각하는 패턴을 찾는것이 목표입니다.
MVVM과 MVP의 차이점
- mvp 는 presenter와 view가 서로를 알아야합니다.
mvvm은 viewModel은 view에 대해 전혀 모르며 view만 viewModel을 알고 있습니다. - mvp 는 presenter와 view가 인터페이스를 통해 상호작용을 합니다.
mvvm은 viewModel을 통해 view가 데이터를 바인드할 수 있습니다. - mvp은 view와 presenter 가 1:1 매칭이 되어야 합니다.
mvvm은 viewModel을 재사용 하여 1:N 관계를 형성할 수 있습니다.
결국 model에서 view를 완전히 모르게 하는것과 viewModel의 재사용으로 1:1이라는 강한 결합을 와해시키기 위해 MVVM을 사용한다고 생각합니다.
그러나 1:N 관계로 사용하는 예제를 보기는 어렵습니다. 구글의 블루프린트 예제조차도 각 view당 하나의 ViewModel을 사용하고 있습니다.
부피가 커지는 ViewModel 하나에만 다 넣을수 없기 때문으로 보입니다.
그래서 MVVM의 특징이라고 하는 1:N 관계를 조금 다른 시각으로 도입해보고자 합니다.
MukMap의 서버api를 살펴본 결과 유형별(channel, food... )로 나누어져 있기에 Client에서도 유형별로 ViewModel을 만들어서 각 View에서 필요한 부분만 observe 하려합니다.
의견주시면 감사하겠습니다.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
docs기능을 문서화 한 이슈입니다.기능을 문서화 한 이슈입니다.