MVP와 AAC ViewModel을 사용한 MVVM 비교
1. 개요
MVP와 AAC에서 제공하는 ViewModel을 사용한 MVVM에 대한 차이점을 이야기하려고 합니다.
MVP에 모르신다면 해당 글을 참고해주세요 링크
두개의 패턴에 대해 공통점이랑 차이점으로 나눠서 설명하려고 합니다.
2. 공통점
- MVP & MVVM은 1:1 형태의 구조를 가진다
- 뷰 & 비즈니스 로직 분리
- 의존성 분리
3. 차이점
1) MVP
- 뷰와 뷰모델간 양방향 구조
- Presenter는 view의 생명주기를 알지 못한다.
2) MVVM
- 뷰와 뷰모델간 단방향 구조
- ViewModel은 view의 생명주기를 알고 있다.
4. 결론
두개의 패턴을 가지고 좋다 나쁘다를 따질수는 없다고 생각합니다. 각각의 패턴이 가지는 적합한 환경과 구조에 따라 효율이 달라지기 때문입니다. 단, Android에서는 View의 생명주기에 관한 영향을 많이 받기에 AAC Viewmodel을 제공하는 적절하게 사용하면 앱 개발에 있어 안정적인 구조로 개발 할 수 있다고 생각합니다.
Leave a comment