Header

[ Design Pattern 03 ] MVVM 패턴이란

[ Design Pattern 03 ] MVVM 패턴이란





MVVM 패턴
MVVM 패턴




[ MVVM이란 ]



MVVM = Model + View + ViewModel 



[ 구조 ]



Model 
일종의 데이터(Data)라고 생각하면 됩니다. 데이터 뿐만이 아니라 데이터를 가공해서 처리하는 간단한 로직도 model안에 포함이 되는 부분입니다.
어플리케이션에서 사용하는 데이터 및 그 데이터를 처리합니다.


View
사용자에게 보여지는 화면입니다. 사용자에게 제공되어지는 UI Layer를 의미합니다.
브라우져나 모바일 화면에서 ViewCSS/HTML/XML 등으로 렌더링 되어서 보여주는 화면을 가리킵니다.

View Model 
View를 표현하기 위해 존재합니다. View를 위한 Model입니다.
그 외에는 View를 나타내기 위한 데이터 처리를 하는 역할을 지닙니다.


*ModelView MVC 패턴과 동일하고, Controller 대신ViewModel이 존재합니다


과정 ]



  1. 사용자의 입력값이 View를 통해 들어옵니다.
  2. View에 입력값이 들어오면 ViewModel에 입력값을 전달합니다. 그 후 ViewModelModel에게 데이터 요청을 보냅니다.
  3. ModelViewModel에게 요청받은 데이터를 Response하고 ViewModel은 그 값을 받은 후 가공처리하여 내부에 저장합니다.
  4. ViewViewModel Data Binding통해 화면상에 표출합니다.



기능 ]



Data Binding이라는 기능을 사용합니다. (View ViewModel의 데이터를 연결시킵니다.


Data Binding을 이용하여 View ViewModel 사이의 의존성이 없습니다.


차별점 ]



ViewModel 사이의 의존성이 없습니다.
Data Binding을 사용하여 View View Model 사이의 의존성이 없습니다.


의존성이 없기 때문에 모듈화가 가능합니다. :)





댓글 쓰기

0 댓글