MVC 패턴

lim1313·2021년 9월 26일
0

TILPLUS

목록 보기
26/40
post-custom-banner

MVC 패턴

MVC란 Model View Controller의 약자로 에플리케이션을 세가지의 역할로 구분한 개발 방법론이다. 아래의 그림처럼 사용자가 Controller를 조작하면 Controller는 Model을 통해서 데이터를 가져오고 그 정보를 바탕으로 시각적인 표현을 담당하는 View를 제어해서 사용자에게 전달하게 된다.

  • Model : 데이터와 관련된 부분
  • View : 사용자한테 보여지는 부분
  • Controller : Model과 View를 이어주는 부분

MVC 패턴을 지키는 코드 작성 방법

Model

모델(Model)은 어플리케이션의 정보, 데이터를 나타낸다. 데이터베이스, 처음의 정의하는 상수, 초기화 값, 변수 등을 뜻한다. 비즈니스 로직을 처리한 후 모델의 변경사항을 컨트롤러와 뷰에 전달한다.

  • 사용자가 편집하길 원하는 모든 데이터를 가지고 있는다.
  • 뷰나 컨트롤러에 대해서 어떤 정보도 알지 말아야 한다.
  • 변경이 일어나면, 변경 통지에 대한 처리방법을 구현해야 한다.

View

MVC 패턴은 여러 개의 뷰(View)가 존재할 수 있으며, 모델에게 질의하여 데이터를 전달받는다. 뷰는 받은 데이터를 화면에 표시해주는 역할을 가지고 있다. 모델에게 전달받은 데이터를 별도로 저장하지 않아야 한다. 사용자가 화면에 표시된 내용을 변경하게 되면 모델에게 전달하여 모델을 변경해야 한다.

  • 모델이 가지고 있는 정보를 따로 저장해서는 안된다.
  • 모델이나 컨트롤러와 같이 다른 구성요소들을 몰라야 한다.
  • 변경이 일어나면 변경통지에 대한 처리방법을 구현해야만 한다.

Controller

모델이나 뷰는 서로의 존재를 모르고 있다. 변경 사항을 외부로 알리고 수신하는 방법만 있다. 컨트롤러(Controller)는 이를 중재하기 위해 모델과 뷰에 대해 알고 있어야 한다. 모델이나 뷰로부터 변경 내용을 통지 받으면 이를 각 구성 요소에게 통지해야 한다. 사용자가 어플리케이션을 조작하여 발생하는 변경 이벤트들을 처리하는 역할을 수행한다.

  • 모델이나 뷰에 대해서 알고 있어야 한다.
  • 모델이나 뷰의 변경을 모니터링 해야 한다.

참고
https://www.youtube.com/watch?v=ogaXW6KPc8I

profile
start coding
post-custom-banner

0개의 댓글