3. MVC
Model - View - Controller
CONTROLLER
VIEW MODEL
Model : 데이터를 갖는 계층
View : 유저에게 보여주는 화면을 표시하는 계층
Controller : 유저에게서 입력을 받아, 모델을 통해 View 에 결과를 표시
4. MVP
Model - View - Presenter
PRESENTER
VIEW MODEL
Model : UI 에 관련된 데이터를 정의하고 데이터구조를 제공하는 인터페이스
View : Model 에서 정의된 데이터를 표시하고 이벤트를 Presenter 로 전달
Presenter : Model 과 View 를 조작한다. Model 로 부터 데이터를 얻어 View 표시를 위한 로직을 담당.
5. MVVM
Model - View - ViewModel
VIEWMODEL
VIEW MODEL
Model : 다른 패턴에서의 역할과 동일
View : ViewModel 에 의해 보여지는 변수와 액션등에 바인딩된다
ViewModel : ViewModel 은 Model 과 View 의 중개역. Model 을 조작하고, View 가 사용하기 쉬운 형
태로 데이터를 제공하는 역할을 맡는다
*
DataBinding
6. MVI
Model - View - Intent
INTENT
VIEW MODEL
Model : 상태를 나타냄. 모델은 다른 레이어와 모델간에 단방향 데이터 흐름을 보장하기 위해 불변이어야 한다
View : MVP 등의 아키텍처와 같은 역할이며 액티비티 혹은 프래그먼트로 구현될 수 있다
Intent : 유저 또는 앱 자체에서 작업을 수행하려는 액션.
*
output
output
output