MVC1과 MVC2의 차이

Anonim

MVC1 대 MVC2 MVC는 실제로 MVC 모델 1과 MVC 모델 2의 두 가지 모델로 분류 할 수있는 디자인 패턴입니다. 두 모델은 모두 Java 디자인 모델 인 MVC1과 MVC2입니다.

MVC2는 실제로 프레젠테이션 제어 논리와 응용 프로그램 상태의 분리가 이루어지는보다 복잡한 패턴입니다. 따라서 MVC1 아키텍처와 달리 Model 2에는 페이지 중심 속성이 없습니다. Model 2에는 들어오는 모든 요청을 처리하는 컨트롤러가 하나 있으며 다음에 무엇이 나타날지 파악하고 어떤보기를 표시할지 결정합니다. MVC2에서 다음 단계 또는 뷰에 대한 JSP 페이지의 링크는 JSP 페이지가 직접 JSP 페이지로 연결되는 MVC1과 대조적으로 컨트롤러를 통과합니다.

기본적으로 MVC1은 JSP를 활용 한 제어 요소로 구성되는 반면, MVC2는 사용자 인터페이스를 제공 할 때 Model 1보다 우수한 JSP와 Servlet을 사용합니다. MVC1은 또한 데이터 검색을 위해 Java Bean을 사용합니다.

두 모델의 시스템의 차이점은 페이지가 처리되고 표시되는 방식에서 분명합니다. 더 설명하기 위해, MVC1은 Bean과 함께 작동하는 JSP에 의해 요청이 받아 들여지기 시작합니다.이 두 가지 결합 된 로직은 결과를 생성하는 논리를 처리합니다. JSP가 "컨트롤러"뿐만 아니라 "뷰"이기도하면서 Beans가 모델의 역할을하는 것처럼 작업은 두 가지로 나뉩니다. "이러한 유형의 페이지 간 직접 액세스는 MVC1 모델을 소규모 애플리케이션에 이상적으로 만듭니다.

반면에 MVC2는 일반적으로 "중앙 집중식"기능으로 인해 대용량 또는 대화 형 응용 프로그램에 사용됩니다. 표시 할 현재 페이지가 열리는 다음 페이지를 결정하는 MVC1과 달리 MVC2 아키텍처는 브라우저와 Servlet 또는 JSP 페이지 사이에서 컨트롤러를 사용합니다. 언급 한 바와 같이, 컨트롤러는 요청이 통과하여 다음보기를위한 길을 닦는 주요 "통로"역할을합니다. 모델 2는 기본적으로 JSP 페이지와 서블릿을 서로 분리하며, 모델 1은이 둘을 결합 된 상태로 유지합니다. 따라서 MVC2는 많은 사용자가 조작하기 쉽고 더 복잡한 시스템을 지원할 수 있습니다.

현재 MVC1을 아키텍처 디자인으로 사용하는 애플리케이션은 거의 없습니다. 웹 브라우징에 대한 요구가 높아지면서 MVC2를 사용하는 프로그램이 무엇이든간에 MVC2를 사용하는 것이 일반적입니다. 물론, MVC1이 끝없이 단순하다는 사실은 연구 목적으로 계속해서 선호된다는 것을 의미합니다. 그러나 실제 응용 프로그램은 더 이상 MVC2만큼 자주 사용되지 않습니다.

오늘날의 일반적인 오해 중 하나는 MVC1과 MVC2의 사용법을 포함합니다.대부분의 사람들은 MVC2가 실제로 MVC의 새로운 버전이라고 믿지만 사실은 하위 카테고리이거나 프로세스에 접근하는 또 다른 방법이므로 모델 2라는 이름입니다. 이러한 이유로 MVC1이라는 구문은 두 모델. 이상적으로, 소프트웨어 아키텍쳐를 마스터하기를 원하는 사람들은 단지 MVC2가 아닌 MVC의 두 측면 모두를 연구해야한다. 이것은 MVC1이 처음 도입 된 것을 고려하여 전체 시스템에 대한 더 나은 이해를 제공합니다.

요약:

1. MVC2는 시스템 컨트롤러를 사용하지만 MVC1은 시스템 컨트롤러를 사용하지 않습니다. 2. MVC1 프로세스는 하나의 JSP 페이지에서 다른 JSP 페이지로 이동하는 반면 MVC2는 다른 페이지로 이동하기 전에 공통 패널로 이동합니다. 3. MVC1은 거의 사용되지 않고 단순하고 독립적 인 프로그램에 주로 유용합니다. 4. MVC2는 오늘날 사용되는 가장 일반적인 아키텍처 모델이며보다 복잡한 시스템에 가장 적합합니다.