[Back-End] MVC Pattern

SHINYEJI·2023년 9월 19일
0

Back-End

목록 보기
16/24

Web Application Architecture

  • JSP를 이용하여 구성할 수 있는 Web Application Architecture은 크게 model1과 model2로 나뉜다.
    • Model1은 JSP가 클라이언트의 요청에 대한 처리(controller에 대응)와 응답할 페이지(view에 대응)를 모두 처리 하는 것을 말한다.
    • Model2은 MVC Pattern을 web 개발에 도입한 구조로 Model / View / Controller로 구분하여 기능을 나눈 구조를 말한다.

Model1

  • JSP 페이지 하나에서 View와 Logic을 모두 처리하는 구조
  • Model1은 크고 복잡한 프로젝트가 아닌 작고 단발성인 프로젝트 등 유지보수가 필요하지 않은 프로젝트에서 주로 사용
    (사용하지 않는 것이 절대 아님)

Model1 Architecture

장점단점
1. 구조가 단순하고 직관적
2. 개발 시간이 비교적 짧아 개발 비용이 감소
1. 출력을 위한 view(html) 코드와 로직 처리를 위한 java코드가 섞여 있어 JSP코드가 복잡해 짐
2. JSP코드에 Back-End와 Front-End가 합쳐져 있어 분업이 어려워짐
3. project의 규모가 커지면 코드가 복잡해 유지보수가 어려워짐
4. 확장성(신기술 도입, 새로운framework 도입 등)이 나쁨

Model2

  • MVC Pattern : Model-View-Controller
  • Model1에서는 JSP가 모든 처리를 했다면, Model2는 model - view - controller로 파일을분업화하여 처리하는 것을 말한다.
    • servlet 역할: clinet 요청에 대한 처리 (Controller)
    • java class(Service, DAO 등) 역할 : logic 처리 (Model)
    • JSP 역할 : client에게 출력하는 response page 작성 (View)

Model2 Architecture

장점단점
1. 출력을 위한 view 코드와 로직 처리를 위한 java 코드가 분리 되어 model1에 비해 코드가 덜 복잡
2. 화면단과 logic단이 분리 되어 분업에 용이
3. 기능에 따라 code가 분리 되었기 때문에 유지 보수가 쉬워짐
4. 확장성이 뛰어남
1. 구조가 복잡하여 초기 진입이 어려움
2.개발 시간 증가로 개발 비용 증가

0개의 댓글