MVC 디자인 패턴

citron03·2022년 1월 27일
0

MVC(Model-View-Controller)

  • 대표적인 UI와 비지니스 로직, 모델을 분리하여 개발하는 소프트웨어 공학의 방법론이다.
  • MVC란 소프트웨어가 작동하는 디자인 패턴으로, application의 여러 처리를 기능별로 나눈다.
  • 이를 통해서 코드의 가독성과 퀄리티가 높아지고, 개발과 협업의 효율이 오를 수 있다.

Model

  • Model은 데이터 정보를 가지거나 데이터베이스와 연결되어 데이터를 가져올 수 있다.

  • 데이터베이스와 직접 상호작용하여 Controller에 필요한 데이터를 주고, 새로운 데이터를 받는 등 Controller와도 상호작용을 할 수 있다.

View

  • 사용자가 직접 보게 되는 화면을 만들어낸다. (User Interface, UI)

  • Controller와 상호작용하여 사용자의 행동이나 이벤트 발생을 전달한다.

  • Controller를 통해서 필요한 데이터를 받아서 화면을 그려낸다.

Controller

  • View의 action, event를 input값으로 받는다.
    이 받은 값들을 Model에 건네기 전에 일련의 가공과정을 거친다.
    그리고 Model에 가공된 데이터를 전달한다.

  • Model에게서 받은 데이터를 View에 알맞게 가공하여 View에게 전달한다.

간단하 예시

  1. 브라우저에서 사용자의 활동이 발생하면, Router에서 활동이 일어난 특정 endpoints를 routing한다.
  2. 각 router는 routing endpoint에 맞는 controller의 함수를 부른다.
  3. controller는 view에 데이터를 바로 전달하거나, model을 거쳐서 데이터베이스로부터 데이터를 받아 view에 전달한다.
profile
🙌🙌🙌🙌

0개의 댓글