본문 바로가기

Study/Design Pattern

[WEB] MVC패턴

Web Application Achitecture는 크게 model1, model2로 나뉜다.

Model1 구조

  • view와 logic을 모두 JSP페이지 하나에서 처리하는 구조
  • Client로부터 요청이 들어오면 JSP페이지는 java beans나 별도의 service class를 이용해 작업을 처리하고 결과를 출력한다.
  • 한 파일에서 그 기능에 대한 logic과 view를 모두 처리하므로 직관적이다. -> 개발시간단축->개발 비용 감소
  • 비슷한 기능을 수행하는 파일이 있다면 그 오류가 어디서 발생했는지 찾기 힘들다 -> 유지보수, 확장이 어려움

Model2 구조

  • 모든 처리를 JSP에서 하는 것이 아니라 Client의 요청에 대한 처리는 servlet, Logic 처리는 java Class, client에게 출력하는 response Page는 JSP가 담당한다.
  • Model2 구조를 MVC(Model-View-Controller) Pattern이라고 한다.
  • 출력을 위한 코드와 로직을 위한 코드가 분리되었기 때문에 JSP는 Model1에 비해 코드가 복잡하지 않다.
  • 화면과 Logic이 분리되어 분업이 용이하다.
  • 기능에 따라 code가 분리되어 유지보수가 쉽다.
  • 확장성이 뛰어나다.
  • 구조가 복잡하여 초기진입이 어렵고 개발시간이 증가하여 개발 비용이 증가한다.

'Study > Design Pattern' 카테고리의 다른 글

[Pattern] Factory Method Pattern  (0) 2022.01.15
[Pattern] Template Method Pattern  (0) 2022.01.15
[Pattern] Singleton Pattern  (0) 2022.01.15
[Pattern] Adapter Pattern  (0) 2022.01.15
[Pattern] 디자인 패턴 개요  (0) 2022.01.15