IT story

Model View Presenter 란 무엇입니까?

hot-time 2020. 12. 30. 19:18
반응형

Model View Presenter 란 무엇입니까?


누군가 Model View Presenter 패턴이 무엇인지 가능한 한 간단하게 설명해 주시겠습니까? Model View Controller와의 차이점은 무엇입니까? 어떤 것이 가장 좋거나 어떤 용도입니까?


Martin Fowler는 MVC, MVP 및 기타 패턴을 정의하고 이에 대해 설명하는 UI 디자인 패턴 페이지를 가지고 있습니다.

http://martinfowler.com/eaaDev/uiArchs.html

차이점을 요약하면 MVC의 컨트롤러는 UI를 더 많이 제어하고 이벤트를 처리하는 반면 MVP의 발표자는 더 수동적이며 UI를 통해 정보를 제공합니다.

일반적으로 그다지 차이가 ​​없으며 종종 그 사이의 경계가 흐릿합니다.


Model View Presenter와 Model View Controller는 모두 동일한 "문제 분리"문제를 해결하려고합니다.

가장 큰 차이점은 MVC (Model View Controller)가 종종 뷰와 어떤 종류의 모델을 결합하여 구현된다는 것입니다. 따라서 주어진 뷰는 특정 객체 (모델)의 시각화를 제공하는 데 특별히 목적이 있습니다.

Model View Presenter 패턴에서 일반적으로 Presenter가 모델 작업을 처리하고 일종의 시각화를 형성하는 데 필요한 정보를 결정합니다.

이 다이어그램에서 화살표는 종속성을 나타냅니다.

MVC 및 MVP 종속성

일반적으로이 패턴 논의는 ASP.NET MVC 프레임 워크를 논의 할 때 발생하며 MVP 패턴 및 ASP.NET WebForms의 구현에 관한 정보를 접하게됩니다. 내 경험상 WebForms가 그 자체로 MVP 패턴 프레임 워크라고 믿어지는 것이 일반적입니다. 이것은 사실이 아닙니다. 그러나 WebForms를 사용하면 MVP 패턴을 매우 쉽게 구현할 수 있습니다.이를위한 가장 좋은 리소스는 Patterns and Practices 팀의 Web Client Software Factory를 조사하는 것입니다.

CodePlex 사이트 : http://www.codeplex.com/websf

주제를 다루는 훌륭한 스크린 캐스트 : http://www.pnpguidance.net/Screencast/MVPBundleScreencastWCSFModelViewPresenterDesignPattern.aspx


Fowler는 MVP를 Supervising Presenter와 Passive View의 두 가지 패턴으로 분리합니다.
Aviad Ezra는 http://aviadezra.blogspot.com/2008/10/model-view-presenter-design-pattern.html 주제에 대한 좋은 기사를 가지고 있습니다.
데스크톱에서는 MVP가 더 좋고 MVC는 웹 앱용이라고 생각합니다. 데스크톱에서는 Model이 이벤트를 발생시킬 수있는 기능이 있기 때문입니다


Dolphin Smalltalk는 MVC 구현을 사용했지만 MVP로 마이그레이션했습니다.

다음은 그들이 한 일과 그 이유를 설명 하는 기술 문서 입니다.

IBM의 Taligent 시스템도 MVP를 사용 했습니다 . 여기에서 무엇과 이유를 설명 합니다 .

참조 URL : https://stackoverflow.com/questions/1317693/what-is-model-view-presenter

반응형