mvc 패턴 예제 c#

모델 뷰 컨트롤러(MVC)는 매우 유용하고 인기 있는 디자인 패턴입니다. 소프트웨어를 작성하는 경우 알고 있어야 합니다. 불행히도 그것은 또한 진정으로 이해하기 어려운 중 하나입니다. 이 기사에서는 MVC에 대한 가장 간단한 설명과 이를 사용해야하는 이유를 제공합니다. 모델의 데이터 변경 사항은 일반적으로 일부 이벤트 처리기를 통해 게시됩니다. 예를 들어 뷰 모델은 데이터 변경 내용을 이해하려면 모델에 등록해야 합니다. 데이터가 변경될 때 함수 콜백을 정의할 수 있습니다: MVC는 응용 프로그램의 다양한 구성 요소를 분리하므로 개발자는 서로 영향을 주거나 차단하지 않고 서로 다른 구성 요소에서 병렬로 작업할 수 있습니다. 예를 들어 팀에서는 개발자를 프런트 엔드와 백 엔드로 나눌 수 있습니다. 백 엔드 개발자는 사용자 인터페이스를 완료할 필요 없이 데이터의 구조와 사용자가 데이터 구조와 상호 작용하는 방법을 디자인할 수 있습니다. 반대로 프런트 엔드 개발자는 데이터 구조를 사용할 수 있기 전에 응용 프로그램의 레이아웃을 설계하고 테스트할 수 있습니다. 뷰는 단순히 데이터가 사용자에게 표시되는 방식을 처리하기 때문에 한 응용 프로그램에 대해 동일한(또는 이와 유사한) 보기를 다른 데이터를 가진 다른 응용 프로그램에 대해 리팩터링할 수 있습니다.

불행히도 이 코드는 사용자 입력을 처리하는 데도 유용할 때 작동하지 않습니다. 예를 들어 DOM 코드(응용 프로그램의 사용자 지정 추상화 포함)는 그래픽 표시및 사용자 입력 모두에 유용합니다. 문서 개체 모델이라는 이름에도 불구하고 DOM은 사용자에게 응용 프로그램의 인터페이스이기 때문에 실제로 MVC 모델이 아닙니다. 다른 소프트웨어 패턴과 마찬가지로 MVC는 각 시스템에 맞게 조정할 수 있도록 하면서 문제에 대해 «솔루션의 핵심»을 표현합니다. [7] 특정 MVC 아키텍처는 여기에 있는 기존 설명과 크게 다를 수 있습니다. [8] MVC(모델 뷰 컨트롤러) 설계 패턴은 응용 프로그램이 데이터 모델, 프레젠테이션 정보 및 제어 정보로 구성되도록 지정합니다. 패턴에서는 이러한 각 개체를 서로 다른 개체로 구분해야 합니다. 2 / 문제는 참조를 사용하는 대신 복사하여 생성자라고한다는 것입니다. 또는 주소. 예를 들어 바꾸기: 비공개: 모델 모델; 뷰 보기; 에 대 한: 개인: 모델 *모델; 보기 *보기; 그리고: void SetView (const View & view) { 이->보기 = 보기; } By: void SetView(const View & view) { 이->보기 = & } 다른 클래스 및 메서드에 대해 너무 오래 사용됩니다. 위의 예제에서는 MVC의 주요 장점인 모델을 재사용할 수도 있습니다.

뷰에 한 가지 유형의 모델 개체만 표시되면 뷰와 컨트롤러를 결합해도 괜찮습니다. 예를 들어 SinglePersonView는 사람 개체만 표시되므로 SinglePersonView를 컨트롤러로 두 배로 늘릴 수 있습니다. 모델 코드가 왜 그렇게 유쾌한가요? 주소록 응용 프로그램 예제를 계속 살펴보겠습니다. 프로젝트 관리자는 개발자에게 다가가 «연락처 목록 창을 좋아하지만 사진으로만 모든 연락처를 표시하는 두 번째 창이 필요합니다. 사진은 행당 5장의 사진이 있는 테이블 레이아웃이어야 합니다.» MVC 패턴의 핵심을 잘라낸 스킨성. 앱이 `스킨`이 아닌 경우 우연히 뷰의 땅콩 버터에 모델의 초콜릿을 받았을 것입니다. 뷰로 표시되는 비교적 정적 템플릿을 통해 모델 데이터를 파고드는 책임은 컨트롤러만 이 코드를 리팩터링해야 합니다.

Next Post:
Previous Post: