카테고리 없음

MVC (Model-View-Controller) 패턴이란?

jjjkh 2024. 4. 1. 22:47

MVC (Model-View-Controller) 패턴이란?


MVC패턴은 컴퓨터공학에서 소프트웨어 설계와 아키텍처를 위한 디자인 패턴 중 하나입니다. 이 패턴은 주로 사용자 인터페이스(UI)를 가진 응용 프로그램에 사용되며, 애플리케이션의 개발과 유지 보수를 쉽게 하기 위해 데이터, 프레젠테이션, 프로세싱을 서로 분리합니다.

MVC 패턴의 세 가지 주요 구성 요소는 다음과 같습니다:

모델(Model)

  • 모델은 애플리케이션의 핵심 데이터와 비즈니스 로직을 나타냅니다. 데이터 저장소와의 상호 작용, 데이터 처리 및 유효성 검사와 같은 작업을 수행합니다. 모델은 독립적으로 작동하며, 뷰와 컨트롤러와 직접적으로 통신하지 않습니다.

뷰(View)

  • 뷰는 사용자에게 보여지는 애플리케이션의 UI 부분입니다. 뷰는 모델에서 데이터를 받아 사용자에게 표시하고, 사용자의 입력을 컨트롤러에 전달합니다. 뷰는 애플리케이션의 데이터 표시와 관련된 모든 작업을 처리합니다.

컨트롤러(Controller)

  • 컨트롤러는 사용자 입력을 처리하고, 애플리케이션의 흐름을 관리합니다. 뷰에서 전달된 사용자 입력을 분석하고, 적절한 모델 기능을 호출하여 데이터를 조작하거나 업데이트합니다. 그런 다음 결과를 다시 뷰에 전달하여 화면에 표시할 수 있습니다.

 

M-V-C의 상호작용

  • MVC 패턴의 세 가지 구성 요소는 상호 작용을 하며,  상호작용시 각 요소는 명확하게 정의된 역할을 수행합니다.
  • 사용자가 애플리케이션에서 작업을 수행하면, 뷰(View)는 사용자의 입력을 감지하고 컨트롤러(Controller)에 전달합니다.
  • 컨트롤러는 사용자 입력을 처리하고 적절한 모델(Model) 기능을 호출하여 데이터를 검색, 수정 또는 저장합니다.
  • 모델은 데이터와 관련된 비즈니스 로직을 수행하고, 필요한 경우 데이터베이스와 상호 작용합니다. 모델은 작업이 완료되면 결과를 컨트롤러에 반환합니다.
  • 컨트롤러는 모델의 결과를 받아 뷰에 전달합니다. 뷰는 이 데이터를 사용하여 사용자에게 보여지는 화면을 업데이트합니다.