MVVM디자인 패턴에 대해 설명해주세요

MVVM디자인 패턴은 Model View ViewModel로 이루어진 디자인 패턴입니다.

MVVM패턴의 목표는 UI와 비즈니스 로직을 분리하는 것입니다.

여기서 UI를 의미하는 것이 View이고

ViewModel은 View를 위한 상태와 유저상호작용에 대한 흐름을 관리합니다.

Model은 데이터 및 비즈니스 로직을 보유합니다.

MVVM의 장점

MVVM에 디자인 패턴은 옵저버 패턴을 사용하여 View가 발생시키는 이벤트를 수신받고, View로 데이터를 보내줍니다.

옵저버 패턴을 통해 ViewModel은 특정 View에 종속적이지 않고 다수의 View와 1대 다관계를 맻을 수 있습니다.

비즈니스로직이 UI코드로부터 격리되어 테스트코드 작성이 용이합니다.