본문 바로가기

디자인패턴

MVC 패턴이란?

728x90
반응형
SMALL

정의

 

Model - View - Controller 의 약자로

 

하나의 Application 을 구성할 때에 구성요소를

 

세 가지 역할로 구분한 패턴.

 

 

 

Model - Application 의 정보, 데이터를 나타냄 (DTO)

규칙

  • 사용자가 편집하길 원하는 모든 데이터를 가지고 있어야 한다.
  • View 나 Controller에 대해서 어떠한 정보도 알지 말아야 한다.
  • 데이터 변경이 일어나면, 변경에 대한 처리방법을 구현해야만 한다. (View를 건들여서는 안됀다.)

 

 

 

 

 

 

View - input 텍스트,체크박스 항목 등과 같은 사용자 인터페이스 요소를 나타냄.

(데이터 및 객체의 입력, 보여주는 출력)

규칙

  • 모델이 가지고 있는 정보를 따로 저장해서는 안된다.
  • 모델이나 컨트롤러와 같이 다른 구성요소들을 몰라야 된다.

 

 

 

 

Controller - 데이터와 사용자인터페이스 요소들을 잇는 다리역할을 함

(사용자가 데이터를 클릭하고, 수정하는 것에 대한 ‘이벤트’ 처리하는 부분)

규칙

  • 모델이나 뷰에 대해서 알고 있어야 한다.
  • 모델이나 뷰의 변경을 모니터링 해야 한다.

 

 

 

 

 

 

정리

 

 

 

 

MVC 패턴의 구조

1.  클라이언트가 controller 로 api 요청을 보낸다.

2. controller 가 model로 데이터 요청 후 일련의 과정을 거친다.

3. model이 controller로 결과 값을 전달 한다.

4. controller는 view에 데이터 결과 전달한다.

5. 클라이언트에게 데이터 결과 표시한다.

 

 

 

 

MVC 패턴 종류

 

MVC1

  • view 와 controller 를 모두 jsp가 담당하는 형태
  • 재사용성이 매우 떨어지며, 읽기도 힘들고, 유지보수 할때의 어려움이 생긴다.

 

MVC2

  • controller 와 view 가 분리되어 있음.
  • 역할이 분리되어 있기 때문에, 유지보수에 용이함.
  • MVC2 가 MVC1 보다 구조적으로 복잡함.
728x90
반응형
LIST

'디자인패턴' 카테고리의 다른 글

Spring MVC 패턴이란?  (0) 2022.12.12