개발/안드로이드 디자인 패턴

MVC

개복치 개발자 2020. 3. 20. 20:02

MVC 모델에 대해서 알아보겠습니다.

 

M : Model 

V : View

C : Controller

 

일단 처음 보면

 

Model 은 데이터 모델 만들고

View 는 레이아웃 만든들고

Controller는 뷰와 모델을 컨트롤해주나

 

라고 처음 생각이 듭니다.

 

자 그럼 얘네들을 그림으로 보면

 

아래와 같이 생겼습니다.

 

 

 

저 Controller에서 View와 Model을 분리하여 Controller에서 로직을 처리해줍니다.

 

일단 MainActivity에 코드를 때려박던 것을 조금 분리하긴 했습니다.

(그래봤자, controller와 Model이긴하지만)

 

예의 코드도 마찬가지로 기능이 많아질 수록 Controller가 비대해지고 코드가 많이 쌓이는 문제점이 발생합니다.

 

때문에, MVP라는 모델이 나타나게 됩니다.

 

MVC 패턴으로 구현을 해 보겠습니다.

 

일단 CountriesService를 만들어놓고

 

 

Controller에서 데이터를 받아와서 model -> view에 넣어줍니다.

 

 

 

 

코드참조 

[1] - https://github.com/DevTides/AndroidArchitectures

 

참조

 

[1] - https://www.udemy.com/course/androidarchitectures/learn/lecture/13892874?start=75#overview

[2] - https://academy.realm.io/kr/posts/eric-maxwell-mvc-mvp-and-mvvm-on-android/

'개발 > 안드로이드 디자인 패턴' 카테고리의 다른 글

MVVM  (0) 2020.03.23
MVP  (0) 2020.03.23
안드로이드 디자인 패턴은 왜 필요한가?  (0) 2020.03.20