문제

이번 주말에 ASP.NET MVP 패턴에 대해 읽고 있으며 MVP 패턴으로하는 경우 가장 간단한 작업조차도 너무 많은 노력을 기울이는 것 같습니다. MVP를 따라갑니다. ASP.NET MVC에서 프로젝트를 수행하지 않겠습니까?

MVP 패턴을보고있는 이유는 모든 ASP.NET WebForm 프로젝트에서 웹에 서버 컨트롤이 많은 경우 이벤트 처리를 위해 코드에 많은 코드가 있다는 것을 알았 기 때문입니다. 형태로 나는 그것을 줄이고 MVP 패턴을 발견 할 수있는 길을 찾고있었습니다.

MVP 패턴을 따르거나 ASP.NET MVC로 전환하려는 노력이 가치가 있습니까?

도움이 되었습니까?

해결책

새 프로젝트를 시작하면 ASP.NET MVC가 더 나은 선택입니다. 그러나 방금 말했듯이 기존 프로젝트를 리팩터링하려면 MVP가 옵션입니다. 웹 형식 코드를 MVC로 쉽게 변환 할 수있는 방법이 없기 때문입니다.

다른 팁

MVP 및 MVC 속도를 높이기 위해 다음 두 링크를 읽는 것이 좋습니다.

전환해야합니까?
당신이 말한 내용을 기반으로 위의 기사에 언급 된 수동 MVP 모델을 사용하는 것이 좋습니다.

나의 주요 가정은 다음과 같습니다.

  1. WebForms 앱의 기존 코드베이스를 처리합니다
  2. 기존 기능을 위해 ThirdParty .NET 컨트롤을 사용해야합니다.
  3. 기존 앱에서 작업하고 다시 건축 할 시간이 없습니다.
  4. 앞으로 작업하는 모든 ASP.NET 웹 앱은 수동 MVP를 점진적으로 적용하고 TDD의 이점을 바로 얻을 수 있습니다.

귀하의 견해 (CodeBehind + ASPX)는 본질적으로 바보가되어 간단한 작업을 수행합니다.

  • 발표자가 제공 한 정보를 가져옵니다
  • 이벤트에 응답하고 발표자에게 정보를 제공합니다.

이 모델을 웹 양식 개발에 광범위하게 사용했으며 모델과 발표자 코드를 테스트 할 수 없다고 상상할 수 없었습니다. 오래 걸리지 않고 단위 테스트의 힘을 본 기본 모델을 설정하면 웹 양식으로 작업하는 것이 즐겁습니다.

내가 사용한 모델이 MVP 물건에 대한 일부 링크는 다음을 기반으로합니다.

또한 MVC를 배우는 것이 좋습니다.
시간이 허용되면 기존 앱을 가져 와서 MVC로 포트하십시오. 이런 식으로 유일한 초점은 MVC를 알게되며 MVC 패턴으로 로직을 이동할 때 웹 포름에서 구현 한 것들을 발견하고 결코 많은 생각을하지 않았지만 이제는 다른 방식으로 해결해야합니다. 패턴을 비교하고 자신에게 맞는 것을 볼 수있는 좋은 방법입니다.

이것이 도움이되기를 바랍니다. 질문이 있으면 자유롭게 물어보십시오.

제 생각에는 새로운 응용 프로그램을위한 이상적인 방법은 MVC입니다. 그러나 이미 WebForms를 사용하는 코드가 많으면 MVP 패턴이 진행됩니다.

새로운 프로젝트라면 ASP.NET MVC로 가려고하지만 MVP는 레거시 웹 양식 프로젝트에 좋은 패턴이 될 수 있습니다.

내 블로그의 예는 다음과 같습니다.http://www.unit-testing.net/currentarticle/how-to-ouse-model-view-presenter-with-aspnet-webforms.html

저의 개인적인 의견은 코드 뒤에 코드가 많이 있다면 MVP를 채택하는 것 외에는 여전히 다른 방법이 있다는 것입니다.

페이지에 광범위한 사용자 상호 작용이있는 경우 (버튼/링크를 활성화/비활성화하는 경우, 패널 및 컨트롤이 나타나거나 사라지는 경우) MVP는 번거 로움이 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top