티스토리 뷰

iOS

[iOS] MVVM이란?

Kim_Baechu 2021. 5. 26. 14:37

디자인패턴의 목적

기술부채 최소화

재사용 및 지속 가능

 

Model - View - ViewModel

ViewController의 역할을 축소

할 일을 명확히 구분 -> 각 요소가 독립적 -> 테스트 용이

 

 

 

Model

Model은 View 레이어와 소통하지 않음

ViewModel에 데이터 전달해줌

View

ViewController는 View 레이어에 속함

ViewController는 View와 ViewModel을 가지고 있음

View는 Binding을 통해 화면을 표시함

 

ViewModel

Model을 가지고 있음

ViewModel은 중계자 역할

Model에 데이터 요청

댓글
공지사항