MVC패턴

.·2022년 7월 30일
0

MVC 패턴이란?

  • Model, View, Controller의 약자로 애플리케이션을 구성하는 구성요소를 세 가지 역할로 구분한 개발 방법론

  • 사용자가 Controller를 조작하면 Controller는 Model을 통해 데이터를 가져오고 그 데이터를 바탕으로 View를 통해 시각적 표현을 제어하여 사용자에게 전달하게 된다.
  • Model: 내부 비즈니스 로직을 처리하는 역할
  • Controller: 사용자의 요청에 맞는 데이터를 Model이 어떻게 처리할 것인지 알려주고 그 데이터를 View에 반영해 사용자에게 알려주는 역할
  • View: Controller로부터 받은 모델의 결과값을 가지고 사용자에게 출력할 화면을 만드는 역할

MVC 패턴 방식

Model1(JSP에서 출력과 로직을 전부 처리)

  • Controller 영역에 View 영역을 같이 구현하는 방식
  • 사용자의 요청을 JSP가 전부 처리
  • 요청을 받은 JSP는 JavaBean Service Class를 사용하여 웹 브라우저 사용자가 요청한 작업을 처리하고 그 결과를 출력

Model2(JSP에서 출력만 처리)

  • 웹브라우저 사용자의 요청을 서블릿이 받고 서블릿은 해당 요청으로 View로 보여줄 것인지 Model로 보낼 것인지를 판단하여 전송
  • HTML 소스와 JAVA소스를 분리해놓았기 때문에 모델 1 방식에 비해 확장시키기도 쉽고 유지보수 또한 쉬움

Model1과 Model2 비교

Model1Model 2
장점빠르고 쉽게 개발디자이너와 개발자의 분업이 가능하며 유지보수 및 확장이 쉬움
단점JSP파일이 너무 비대해지며 Controller와 View가 혼재하므로 향후 유지보수에 어려움설계가 어려우며 개발 난이도가 높음

MVC 패턴을 사용하는 이유

  • 비즈니스 로직과 UI 로직을 분리하여 유지보수를 독립적으로 수행 가능
  • Model과 View가 다른 컴포넌트들에 종속되지 않아 애플리케이션의 확장성, 유연성에 유리
  • 중복 코딩의 문제점 제거

참고

0개의 댓글