E D R , A S I H C RSS

Model View Presenter


Model
View
Presenter

MVC 에서 유래. MVP 의 목적은 Model 과 View 사이의 Observer connection 에 대해 더 깔끔한 구현을 제공하는 것이다.

MVP 는 실제로 3개의 클래스가 더 있다. 요약하면
  • Presenter - 어플리케이션을 표현하고 코디네이트한다. 다른 오브젝트들을 생성하거나 관계를 맺는다.
  • Model - domain data
  • Selection - Model 의 서브셋을 구체화한다. (Command에 의해 조정된다.)
  • Command - 모델에 영향을 주는 것 (CommandPattern 과 같다)
  • Interactor - 키보드나 마우스 이벤트들을 Command 나 Selection 으로 매핑한다.
  • View - 모델을 (또는 일부) 출력.

어플리케이션을 이러한 방법으로 나누는 것은 좋은 SeparationOfConcerns 이 되며, 다양한 부분들을 재사용할 수 있도록 해준다.


http://www-106.ibm.com/developerworks/java/library/j-mvp.html
{{|
Model-View-Presenter or MVP is a next generation programming model for the C++ and Java programming languages. MVP is based on a generalization of the classic MVC programming model of Smalltalk and provides a powerful yet easy to understand design methodology for a broad range of application and component development tasks. The framework-based implementation of these concepts adds great value to developer programs that employ MVP. MVP also is adaptable across multiple client/server and multi-tier application architectures. MVP will enable IBM to deliver a unified conceptual programming model across all its major object-oriented language environments.

C++, Java 의 다음 세대 프로그래밍 모델. Smalltalk 의 고전적인 MVC 프로그래밍 모델에서 나왔으며, 다양한 번위의 어플리케이션과 컴포넌트 개발 테스크를 위한 강력하면서 이해하기 쉬운 디자인 방법론. 이 개념의 framework-based 구현물은 MVP 를 em쓰는 개발 프로그램에 훌륭한 가치를 더해준다. MVP는 또한 다중 client/server 나 multi-tier 어플리케이션 아키텍쳐에도 적합하다. MVP 는 IBM 의 대부분의 OO Language 환경들에 대해 단일한 개념의 프로그래밍 모델을 제공해 줄 수 있을것이다.
|}}

실제 IBM 의 샌프란시스코 프레임워크에 사용되었다고 들었던것 같다. (그래서 그런지 좀 추상적이면서 광고성의 문구로 보이긴 하다 -_-;) --1002

자인분류
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2009-05-27 07:09:19
Processing time 0.0261 sec