Android 앱은 관심사를 분리하고 유지보수성과 테스트 가능성을 높이는 아키텍처 패턴의 혜택을 받습니다 — 특히 MVVM(Model-View-ViewModel, Google의 권장), MVI(Model-View-Intent), Clean Architecture. 이들을 이해하는 것은 잘 구조화된 앱을 만드는 데 중요합니다.
MVVM — Model-View-ViewModel (권장)
MVVM은 UI를 로직과 데이터에서 분리:
VIEW (Activity/Fragment/Compose) → UI 표시, ViewModel 관찰, 이벤트 전달
VIEWMODEL → UI 상태 + 로직 보유; 관찰 가능한 상태 노출 (LiveData/StateFlow);
구성 변경에서 살아남음; Android 프레임워크/UI 의존성 없음 (테스트 가능)
MODEL → 데이터 (repository, 데이터 소스)
→ View가 ViewModel의 상태를 관찰하고 반응형으로 업데이트. Google의 권장
패턴 (Architecture Components 사용).
