TIL

2024.01.26 TIL

영우는여전히 2024. 1. 26. 10:22

MVC 패턴

 

Model-View-Controller의 약자로,

애플리케이션을 세 가지 역할로 구분한 개발 방법론이다.

 

Model(모델)은 애플리케이션의 정보, 데이터를 나타낸다.

이는 데이터베이스와 연동하여 사용자가 질의하는 입출력 데이터를 다루는 역할이다.

또한, 데이터베이스에서 데이터를 추출하거나 저장, 삭제, 업데이트하는 등의 역할을 수행한다.

이 모델이 가진 데이터와 비즈니스 로직은 View에서는 전혀 알지 못하며, Controller를 통해서만 접근할 수 있다.

 

View(뷰)는 사용자에게 보여지는 화면을 담당한다.

사용자가 보는 인터페이스를 구성하고, 사용자의 동작에 따라 발생하는 이벤트를 Controller에 전달하는 역할을 한다.

또한, Controller로부터 받은 Model의 결과값을 사용자에게 화면으로 출력한다.

Controller(컨트롤러)는 Model과 View를 연결하는 역할을 하고 사용자의 입력을 받아 Model의 데이터를 변경하거나, Model의 데이터 상태를 바탕으로 View를 업데이트를 한다.

즉, Model이 데이터를 어떻게 처리할지 지시하며, 이렇게 변경된 데이터 상태를 View에 반영하여 사용자에게 보여주게 된다.

MVC 패턴은 이렇게 역할을 명확히 분리함으로써 개발과 유지보수를 용이하게 하고, 유연성과 확장성을 높이는 장점이 있다.

하지만, View와 Controller가 Model에 의존적이라는 단점도 있으니 이 점을 유념하면 좋다.