1 minute read

MVVM 패턴은 무엇인가.

  • 우리 프로젝트는 현재 provider 를 사용하셔 전역 상태관리를 하고 있다.
  • MVVM은 뷰, 뷰모델, 모델 세개 영역으로 나눠 클래스를 만든다.
  • 아래는 플러터 MVVM 아키텍처 데이터 흐름도이다.

이미지

역할
  • 뷰모델 = 액션을 수행하고, 자신의 상태 업데이트
  • 뷰 = 상태 변경을 통지받아 화면 업데이트
  • 모델(서비스) = 외부에서 데이터를 받아올 때는 서비스 이용
  • 레포지토리 =
추가 규칙
  • 뷰모델은 뷰에 직접 접근하지 않음
  • 뷰모델간에 서로 참조하지 않음. 데이터를 공유할때는 위쪽 뷰나, 아래쪽 서비스 이용
흐름
  1. view 에서 사용자의 입력을 viewModel 로 전달
  2. viewModel 에서 model 로 데이터 요청 및 처리
  3. view 는 viewModal 을 provider 를 통해 구독하거나 데이터 상태관리를 통해 view를 업데이트.

Updated:

Leave a comment