시작이 반

MVC 디자인 패턴 본문

Programming/기타

MVC 디자인 패턴

G_Gi 2021. 1. 9. 17:45
SMALL

MVC란 Model View Controller의 약자로 에플리 케이션을 세가지의 역할로 구분한 개발 방법론이다. 이 패턴을 성곡적으로 사용하면, 사용자 인터페이스로부터 비지니스 로직을 분리하여 애플리케이션의 시각적 요소나 그 이면에서 실행되는 비지니스 로직을 서로 영향 없이 쉽게 고칠 수 있는 애플리케이션을 만들 수 있다.

 

Controller :

 사용자가 접근 한 URL에 따라서 사용자의 요청사항을 파악한 후에 그 요청에 맞는 데이터를 Model에 의뢰하고, 데이터를 View에 반영해서 사용자에게 알려준다. 

 

View :

 Controller로 데이터를 받아서 클라이언트 측 기술인 html/css/javascript를 이용해 표현하는 역할을 한다. 데이터를 따로 보관하지 않고 처리한다.

 

Model :

 애플리케이션의 정부, 데이터의 가공을 책임지며 DB와 상호작용을 하며 비지니스 로직을 처리하는 모듈, 컴포넌트를 말한다.

 

MVC 패턴에는 2가지 종류가 있다.

 

MVC1

JSP가 모든 요청을 처리한다.

JSP가 Controller와 View기능을 모두 담당한다. 하나의 JSP페이지 내에서 controller는 Java, View는 HTML, CSS 이벤트는 자바스크립트를 사용한다. 개발을 빨리 할 수 있다.

 

MVC2

Controller, View, Model을 모두 나눠서 처리한다.

Controler는 Requestmapping을 통해 URL을 확인하여 View에 줄지, Service로 가서 추가적인 Business Login을 할지 결정한다.HTML과 Java를 분리하여 처리하기 때문에 Model1에 비해 확장성과 유지보수도 좋다.

 

대부분Spring프로젝트들은 MVC2의 구조를 따름

 

 

참고

- aridom.tistory.com/61

- opentutorials.org/course/697/3828

- ko.wikipedia.org/wiki/%EB%AA%A8%EB%8D%B8-%EB%B7%B0-%EC%BB%A8%ED%8A%B8%EB%A1%A4%EB%9F%AC

LIST

'Programming > 기타' 카테고리의 다른 글

Sync, Async, Blocking, Non-Blocking  (0) 2022.11.13
Redis(Remote Dictionary Server)  (0) 2022.08.17
로깅(Logging)이란?  (0) 2022.06.07
싱글턴 패턴(Singleton pattern)  (0) 2021.02.18
[IntelliJ ] 단축키  (0) 2021.01.19