MVC 패턴

Sieun Dorothy Lee·2023년 12월 6일
0

MVC 패턴이란?

MVC (model-view-controller) 는 사용자 인터페이스, 데이터 및 논리 제어를 구현하는데 널리 사용되는 소프트웨어 디자인 패턴이다.
* 디자인 패턴 : 프로그래밍 문제를 해결하는 접근법

모델 : 데이터와 비즈니스 로직을 관리한다
뷰 : 레이아웃과 화면을 처리한다
컨트롤러: 모델과 뷰로 명령을 전달한다


모델

  • 앱이 포함해야할 데이터가 무엇인지를 정의

  • 데이터의 상태가 변경되면, 모델을 뷰나 컨트롤러에게 알림

  • 규칙: 뷰나 컨트롤러에 대해서 어떤 정보도 알지 말아야함 (뷰나 컨트롤러를 참조하는 내부 속성값을 가지면 안 된다는 의미)
    ex) Database

  • 앱의 데이터를 보여주는 방식을 정의
  • 표시할 데이터를 모델로부터 받음
  • 사용자가 발생시킨 이벤트를 처리 (컨트롤러로 전달)
  • 규칙: 모델의 정보를 따로 저장해서는 안됨, 뷰 역시 모델과 컨트롤러의 동작을 몰라야 함
    ex) HTML, CSS

컨트롤러

  • 앱의 사용자로부터의 입력에 대한 응답으로 모델 및 뷰를 업데이트하는 로직을 포함
  • 버튼 클릭, 엔터 등과 같은 사용자 액션으로 인한 입력이 컨트롤러에게 전송되고, 컨트롤러는 입력에 맞게 모델을 적당히 처리한 다음, 업데이트된 데이터를 뷰로 전송
  • 역할에 따라 서로 격리되어 있는 모델과 뷰를 연결하고 움직이는 주체
  • 규칙: 모델이나 뷰에 대해서 알고 있어야 하며, 각각의 변경을 모니터링해야함

MVC 패턴을 사용해야하는 이유

  • 비즈니스 로직과 UI 로직을 분리하여 유지보수를 독립적으로 수행가능
  • Model과 View가 다른 컴포넌트들에 종속되지 않아 애플리케이션의 확장성, 유연성에 유리함
  • 중복 코딩의 문제점 제거 (코드의 재사용)

출처

mdn web docs (https://developer.mozilla.org/ko/docs/Glossary/MVC)
snippet 블로그 (http://bsnippet.tistory.com/13)

profile
성장하는 중!

0개의 댓글