본문 바로가기

Android

디자인 패턴] MVVM

프로그램 로직과 사용자 인터페이스 컨트롤을 분리하도록 구성된 소프트웨어 디자인 패턴

이 아키텍처 패턴은 비즈니스 로직과 사용자 인터페이스 로직 간의 명확한 분리하여 애플리케이션을 설계하고 구현하는 데 특히 유용

 

M ( model )

애플리케이션의 데이터 및 비즈니스 로직을 나타냄

본질적으로 응용 프로그램의 원시 정보를 담당

V ( view )

이 구성 요소는 사용자가 화면에서 보는 것의 구조, 레이아웃 및 모양을 정의하는 역할

이상적으로 보기는 순전히 선언적입니다. 즉, UI의 구조와 모양을 제공하지만 표시할 정보나 사용자 작업에 반응하는 방법은 결정하지 않음

VM (view model)

Model과 View 사이의 중개자 역할을 함.

ViewModel은 Model에서 데이터를 가져와서 View에서 사용하기 쉬운 방식으로 표시

또한 View가 사용자 작업에 응답하는 데 도움이 되는 메서드를 제공, View는 Model과 직접 상호 작용하기 위한 논리를 포함할 필요없음