본문 바로가기

안드로이드/디자인패턴

[디자인 패턴] MVC 패턴

디자인 패턴이란?

인터넷에 검색해보면 "공통적으로 발생하는 문제에 대해 재사용이 가능한 해결책" 이라 나온다.

개발의 역사가 길지는 않지만 지금까지 개발하면서 생기는 공통적인 문제들을 쉽게 해결할 수 있도록 만든 것이 디자인 패턴이라고 생각한다.

 

안드로이드 디자인 패턴에는 대표적으로 MVC, MVP, MVVM가 있다.

 

MVC 패턴이란?

MVC란 Model - View - Controller 의 약자이다.

  • Model - 데이터
  • View - 사용자 화면 
  • Controller : Model 과 View를 연결해주는 관제탑 역할

MVC의 관계는 다음과 같다.

Model

Model은 데이터와 관련된 작업을 하는 곳

안드로이드에서는 Data Class가 Model을 담당하고 있다.

 

View

View는 사용자가 직접적으로 보는 화면인 인터페이스이다.

안드로이드에서는 Layout(XML)이 담당하고 있다.

 

Controller

Controller는 Model과 View 사이를 연결해주는 컨트롤 타워로써, 둘 사이의 상태 변화를 처리한다.

안드로이드에서는 주로 Activity와 Fragment에서 Controller 역할을 담당하고 있다.

 

MVC 패턴의 장단점

장점

1. 데이터와 인터페이스가 분리되어 상호작용 하므로 서로 독립적인 개발이 가능하다.

2. 널리 알려진 대표적인 패턴이기 때문에 단순하다.

 

단점

1. 구조가 크고 복잡해지면 Controller의 코드가 길어져 유지 보수에 어려움이 있을 수 있다.

 

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

[디자인 패턴] MVVM  (0) 2023.11.03