본문 바로가기
CS

MVC 패턴

728x90

 

 

 


MVC 패턴이란?

 

MVC 패턴은 Model-View-Controller 패턴의 약자이다. SW 아키텍처 패턴 중 하나로 주로 웹 애플리케이션 설계에 널리 사용되고 있다. Spring Framework가 이를 지원하는 대표적인 프레임워크이다.

 

Model
애플리케이션의 비즈니스 로직을 담당하며 앱의 정보, 데이터 등을 관리한다. 

View
사용자가 접하게 되는 화면이다. Model이 처리한 데이터를 Controller를 통해 전달받고 이를 이용하여 데이터의 시각화를 담당한다.

Controller
Model과 View를 느슨하게 연결한다. MVC 패턴에서 유일하게 다른 컴포넌트의 존재를 알고 있으며 데이터의 흐름을 제어한다. 사용자의 요청을 Model에 전달하고 바뀐 Model 데이터를 다시 View에게 전달한다.

 

MVC 패턴은 Model과 View의 분리를 핵심으로 삼으며 각각 컴포넌트들은 독립적이다.

 

 

 


 MVC 진행 과정

 

 

① Client가 Request를 보낸다.
② Controller가 이를 감지하고 필요한 데이터를 Model에 요청한다.
③ Model은 수행 결괏값을 Controller에게 반환한다.
④ Controller는 Model로부터 받은 결괏값을 View에게 전달한다.
⑤ View는 결괏값을 참조하여 적절한 화면을 구성하고 Client에게 reponse 하여 화면에 출력한다.

 

 

 


👍 MVC 패턴 장점

 

◾ 각 컴포넌트들은 낮은 의존도를 가져 독립적으로 개발이 가능하다.

◾ 구성 요소들을 재사용성이 올라가 높은 확장성을 가진다.

◾ 각 컴포넌트들의 역할이 명확하여 코드의 유지 보수가 쉬워진다.

 

 

 


👎 MVC 패턴 단점

 

◾ 많은 클래스들로 인해 복잡해질 수 있다.

◾ 설계 시간이 오래 걸린다.

◾ Model과 View의 완벽한 분리가 어렵다.

 

 

 


📃 Ref

728x90
반응형