INNENTÜREN, TUNING DESIGN TÜREN aus Slowenien.


  • Ljubljana


    0038651 - 660 - 406

  • Ptuj


    0038651 - 316 - 130
    0038631 - 688 - 777

c# mvp 패턴 예제

c# mvp 패턴 예제

패턴 자체는 개념에서 똑바로 진행되지만 구현은 다른 많은 디자인 원칙에 의해 뒷받침되어 있어 이를 약간 어렵게 만들 수 있습니다. 좋은 소식은 MVP 코드 베이스를 구현하면 프록시를 통해 다른 여러 디자인 원칙을 배울 수 있다는 것입니다. 그렇다면 모델 뷰 발표자 패턴은 무엇이며 왜 사용해야 합니까? 기본적으로 모델 뷰 발표자에서는 사용자 컨트롤 및 양식이 되는 WinForms에서 각 UI 구성 요소를 뷰 인터페이스를 구현하여 시작합니다. MVP 디자인 패턴을 사용하는 프로젝트에 던져졌습니까? 이 정보는 디자인 패턴의 규칙을 유지하는 데 도움이 됩니다. .Net 플랫폼은 코드 예제 및 컨텍스트에 사용되지만 나열된 규칙은 언어에 특정되지 않습니다. ASP.Net 사용하는 MVP 디자인 패턴의 자습서 및 예제입니다. Pluralsight 코스에서는 잘못 작성된 Windows Forms 앱을 더 나은 상태로 리팩터링하는 방법을 시연했습니다. 불행히도, 시간은 내가 MVP 패턴의 시작보다 더 아무것도 보여 허용하지 않았다. 그러나 많은 사람들이 더 개발 된 예제를 보도록 요청했기 때문에 이 과정의 데모 응용 프로그램이 있지만 MVP를 보다 광범위하게 사용하도록 리팩터링했습니다. 물론 실제 엔터프라이즈 앱의 경우 뷰와 발표자를 구성하고 뷰 간에 탐색하기 위한 프레임워크를 추가하는 IoC 컨테이너를 거의 확실하게 도입하는 것은 여전히 작은 응용 프로그램입니다.

그러나 바라건대 이것은 당신이 당신의 자신의 응용 프로그램에이 패턴을 적용하기 시작할 수있는 방법에 대한 몇 가지 아이디어를 제공하는 역할을합니다. 대체로 MVP에는 감독 발표자와 패시브 뷰의 두 가지 유형이 있습니다. 감독 발표자는 뷰와 모델 간의 결합을 허용하지만 패시브 뷰는 이를 금지합니다. 수동 보기는 논리가 없는 씬 뷰를 장려하면서 단위 테스트 가능성을 최대화하려는 경우 선호됩니다. 수동 보기는 이 예제에 설명된 접근 방식입니다. A) MVP 패턴의 기본 개념은 문제의 분리입니다. 이렇게 하면 테스트 가능성이 향상되고 모의 개체를 도입하여 도메인 부분을 테스트할 수 있습니다. 또한 모델 데이터를 다르게 나타낼 수 있는 뷰를 변경할 수 있습니다. 패턴을 설명하는 가장 간단한 방법은 슈퍼마켓에서 체크 아웃을 고려하는 것입니다. 고객이 보기이고 계산원이 발표자이고 금전 등록기가 모델이라는 것을 시각화합니다.

MVC 아키텍처는 문제의 분리를 달성하는 데 사용할 수 있는 가장 오래된 패턴 중 하나입니다. MVC는 비주얼라이제이션, 모델, 뷰 및 컨트롤러의 세 개의 레이어로 구성됩니다. 단추에 대 한 이벤트를 #endregionAdd 하 고 모델에서 발표자를 통해 데이터를 가져옵니다 하 고 보기에 바인딩할 코드를 작성 합니다. 발표자 생성자에서 우리는 동일한 aspx page.protected void Button1_Click (개체 발신자, EventArgs e){ 발표자 p = 새 발표자 (이, 새 WebApplication1.Model()); p.BindModalView();}의 참조를 의미하는 “this”를 전달했습니다. 또한 MVP 패턴을 가진 작은 응용 프로그램을 구현했습니다. 이제 IView 및 IModel 인터페이스를 추가하는 이점을 보여주기 위해 몇 줄을 더 추가하려고합니다. 이러한 인터페이스를 사용하면 코드를 보다 관리하고 재사용할 수 있습니다. 또한 응용 프로그램을 테스트하려는 경우 TestProject를 만들고 모의 구현을 위해 IView 및 IModel을 사용할 수 있습니다. 그리고 단위 응용 프로그램을 테스트합니다. 이 문서의 다음 부분에서는 단위 테스트를 위한 MockUp과 같은 NUnit 또는 다른 도구를 사용하여 이 응용 프로그램을 테스트하는 방법을 보여 드리겠습니다.

이 도움이 되었기를 바랍니다. A) 이러한 개체는 사용자 컨트롤과 GUI가 오늘날처럼 개발되지 않은 시대에 마이크 포텔의 MVP에 존재했습니다.