ASP.NET MVC 세계에서는 ASP.NET에 대한 많은 개선 사항이 프레임 워크 자체에 포함되었습니다. 이 디자인 패턴의 주요 목적은 더 나은 유지 관리 성, 개선 된 테스트 가능성 및 응용 프로그램의 깔끔한 구조에 중점을두기 위해 비즈니스 로직을 사용자 인터페이스에서 분리하는 것입니다.
ASP.NET MVC에는 다음 중 하나 이상이 필요한 경우 선택할 수있는 최상의 옵션이되는 특정 기능이 있습니다.
• 생성 된 HTML에 대한 높은 수준의 제어 : Web Forms와 달리 ASP.NET MVC의 Views는 사용자가 지시 한대로 HTML을 렌더링합니다. 최근에이 영역에서 Web Forms가 개선되었지만 여전히 MVC의 제어 수준이 없습니다.
• 더 쉬운 단위 테스트 : ASP.NET MVC, 그것은 매우 쉽게 같은 테스트 주도 개발 (TDD)와 같은 패턴을 테스트 따르는 것입니다. Web Forms의 복잡한 이벤트 수명 주기로 인해 컨트롤 기반 프레임 워크에서 MDD를 사용하면 TDD가 훨씬 더 쉽습니다.
• 우려의 분리 : 시스템의 모든 측면이 명확하게 분리되어 있음을 나타냅니다. 구현하는 패턴으로 인해 MVC 응용 프로그램은 불연속 및 느슨하게 바인딩 된 부품 (모델, 뷰 및 컨트롤러)으로 나뉘어 유지 관리가 쉽습니다.
다른 장점 중 일부는 다음과 같습니다.
• MVC 패턴 자체는 애플리케이션의 기능을 모델, 뷰 및 컨트롤러의 세 가지 핵심 부분으로 명확하게 분리하여 복잡성을보다 쉽게 관리 할 수 있습니다.
ASP.NET MVC 웹 응용 프로그램은 뷰 상태 또는 서버 기반 양식을 사용하지 않습니다. 따라서 MVC 프레임 워크는 응용 프로그램의 동작을 완전히 제어하려는 개발자에게 이상적입니다. 보기 상태가 매우 커질 수 있으며 이는 느린 네트워크에서 실행되는 스마트 폰과 같은 장치에서 문제가됩니다 (모든 정보를 전송하는 것이 매우 느릴 수 있음). Web Forms 페이지에서는 페이지 당 하나만 가질 수 있습니다. 이것은 상당히 큰 제약입니다. MVC에는 그러한 제한이 없습니다. 즉, 원하는만큼 요소를 가질 수 있습니다.
ASP.NET MVC는 TDD (Test-Driven Development)를보다 잘 지원합니다.
ASP.NET MVC는 대규모 개발자 팀이 지원하는 웹 응용 프로그램과 HTML에 대한 높은 수준의 제어가 필요한 웹 디자이너에 적합합니다. ASP.NET MVC 요청 처리