iOS스터디/iOS

[IOS] MVVM 모델 개념

슬라임 통통 2021. 1. 2. 01:28
728x90

MVVM 모델

 

 

 

Model - View - ViewModel

 

SwiftUI가 작동하려면 MVVM을 준수하여야한다.  MVVM없이는 SwiftUI를 할 수 없음.

 

MVC는 UIKit  개발 메커니즘을 따름. ( 몇년전만 해도 MVC모델 사용 )

 

Model은 UI와 독립적이다. 알고리즘적인부분, 기능적 부분, 데이터부분 등등

모델은 “The Truth”

데이터는 항상 모델->뷰로 이동한다.



View는 모델에 있는 것을 그리는 것과 같다. 카드 매칭게임이 화면에 나타나는것 

게임의 상태를 반영하는것이 뷰. 즉 모델의 상태를 반영함

선언하는 것과 같다. 스위프트UI는 명령형임 그래서 코딩을 해야함.

뷰는 사실은 구조체이고 , 기본적으로 읽기 전용이다.



View Model은 View를 Model에 바인딩하는 것임

인터프리터 통역 역할을 함

자동 업데이트 하는데 도움을 준다.

뷰모델을  모델의 변화를 알아채고, 무엇인가 바뀌었다고 공론화한다.  뷰는 뷰모델을 통해 바뀐것을 알아챈다.

또한 스위프트UI는 인텐트(사용자의도)가 중요한데, 뷰모델에서 그것을 관리함

MVVM에서 View Model은 항상 클래스이다.

 

728x90
반응형