정의

Model, View, View Model의 약자. 프로그램의 비지니스 로직과, 프레젠테이션 로직을 UI로 명확하게 분리하는 패턴

image.png


용어

Model

데이터와 비즈니스 로직을 담당한다. 데이터를 가져오고 저장하는 역할을 수행한다. 보통 데이터베이스, 네트워크 요청 또는 파일 시스템과 같은 데이터 소스와 상호 작용한다.

View

사용자 인터페이스(레이아웃, UI)를 담당한다. 사용자가 보는 화면을 표시하고, 사용자 입력을 처리한다.

ViewModel

View와 Model 사이에서 중재자 역할을 수행한다. ViewModel은 View를 전혀 몰라도 되도록 설계한다. View에서 발생하는 이벤트를 감지하고, 해당 이벤트에 맞는 비즈니스 로직을 수행한다. Model과 상호작용하여 데이터를 가져오거나 업데이트한다. View에 데이터를 업데이트한다.

특징

장단점

장점