1124_mvvm에 대해서
MVVM 패턴은 무엇인가.
- 우리 프로젝트는 현재 provider 를 사용하셔 전역 상태관리를 하고 있다.
- MVVM은 뷰, 뷰모델, 모델 세개 영역으로 나눠 클래스를 만든다.
- 아래는 플러터 MVVM 아키텍처 데이터 흐름도이다.
역할
- 뷰모델 = 액션을 수행하고, 자신의 상태 업데이트
- 뷰 = 상태 변경을 통지받아 화면 업데이트
- 모델(서비스) = 외부에서 데이터를 받아올 때는 서비스 이용
- 레포지토리 =
추가 규칙
- 뷰모델은 뷰에 직접 접근하지 않음
- 뷰모델간에 서로 참조하지 않음. 데이터를 공유할때는 위쪽 뷰나, 아래쪽 서비스 이용
흐름
- view 에서 사용자의 입력을 viewModel 로 전달
- viewModel 에서 model 로 데이터 요청 및 처리
- view 는 viewModal 을 provider 를 통해 구독하거나 데이터 상태관리를 통해 view를 업데이트.
Leave a comment