집 >백엔드 개발 >C#.Net 튜토리얼 >MVC 및 3계층 아키텍처에 대한 간략한 논의
MVC(Model View Controller) 모델, 뷰 및 컨트롤러로 보다 널리 사용되는 구조 설계입니다. 모델.
모델 : MVC 디자인 패턴에서 표현해야 하는 데이터입니다. 정상적인 상황에서 모델은 데이터베이스에서 데이터를 읽고, 모델 상태를 저장하고, 데이터 액세스 방법과 데이터 유지 관리를 제공해야 합니다.
보기: 모델에 데이터를 표시하는 데 사용되는 사용자 인터페이스입니다. 일반적으로 보기는 HTML 페이지입니다.
컨트롤러: 모델의 상태를 변경하고 적절한 뷰를 선택하여 표시하기 위해 사용자 입력이나 대화형 명령을 처리하는 데 사용됩니다. 해당 모델 데이터.
(1) 사용자가 컨트롤러에 요청합니다.
(2) 컨트롤러는 사용자 요청을 받은 후 모델에 관련 데이터를 요청합니다.
(3) 모델은 해당 데이터를 컨트롤러에 반환합니다.
(4) 컨트롤러는 지정된 뷰에 관련 데이터를 보냅니다.
(5) View는 사용자에게 데이터를 제공합니다.
위의 소개를 통해 모두가 MVC에 대해 어느 정도 이해하고 있다고 생각합니다. 그렇다면 이전에 연구한 3티어 아키텍처와 MVC의 유사점과 차이점은 무엇입니까? 그렇죠?
MVC와 3티어 아키텍처의 트리거 포인트는 동일합니다. 그리고 디커플링. 이들은 모두 디스플레이와 데이터의 분리를 달성하여 시스템 결합을 크게 줄입니다.
하지만 전문적인 관점에서 MVC는 3레이어와 관련이 없으며 MVC는 3레이어입니다. 이들을 연결할 수 있는 것은 '셋'이라는 단어뿐인데, 초보자의 입장에서는 이 둘을 하나로 묶어서 구별하는 것이 이해하기 더 쉽다.
같다는 것 외에 나머지는 모두 다르다고 할 수 있습니다. 각각의 작동 메커니즘에 대한 자세한 내용은 아래 그림을 참조하세요.
세 레이어의 UI는 다음과 같이 분해됩니다. MVC 뷰 및 컨트롤러, BLL 및 DAL이 모델에 병합됩니다. 또한 3-Tier 아키텍처를 3-Tier 아키텍처라고 부르지만 필요에 따라 여러 레이어로 나눌 수 있습니다. 모델은 세 번째 계층에도 포함되지만 세 번째 계층의 모델은 MVC의 모델과 완전히 다릅니다. 세 번째 계층의 모델은 테이블 엔터티인 반면 MVC의 모델에는 비즈니스 논리와 데이터 액세스가 포함됩니다.
(1) 단위 테스트 용이
( 2) 테스트 주도 개발 구현 용이
(3) 확장 및 교체 용이
(4) 웹에서 관련 기능 지원 Form
(5) URL은 컨트롤러
에 매핑됩니다. MVC에는 Web Form에 대한 몇 가지 새로운 기능이 있지만 MVC는 기존 Web Form을 대체할 수 없습니다. 폼 기술, 이 두 기술은 서로 다른 시나리오에서만 사용되며 서로 다른 장점과 단점이 있습니다. 어느 기술이 높고, 어떤 기술이 낮다고 일방적으로 말할 수는 없으며, 개발자는 실제 상황에 따라 해당 기술 개발 프로젝트를 선택해야 합니다. 위 내용은 관련 정보를 참조하여 MVC 및 3계층 아키텍처에 대해 개인적으로 이해한 내용입니다. 부족한 점이 있으면 비판하고 수정해 주시기 바랍니다.
위 내용은 MVC와 3티어 아키텍처에 대한 간략한 설명입니다. 더 많은 관련 내용은 PHP 중국어 홈페이지(www.php.cn)를 참고해주세요!