Model-View-Presenter

E827354

Model-View-Presenter is a software architectural pattern that separates an application into model, view, and presenter components to improve testability and maintainability, particularly in user interface code.

All labels observed (1)

Label Occurrences
Model-View-Presenter canonical 1

How this entity was disambiguated

Statements (49)

Predicate Object
instanceOf software architectural pattern ⓘ
user interface architectural pattern ⓘ
abbreviation MVP ⓘ
appliedIn event-driven programming ⓘ
category architectural pattern ⓘ
presentation layer pattern ⓘ
contrastsWith Model-View-Controller in controller responsibilities ⓘ
decouples view from model ⓘ
definesRoleOf Model ⓘ
Presenter ⓘ
View ⓘ
documentationLanguage UML diagrams ⓘ
emphasizes passive view ⓘ
supervising controller ⓘ
focusesOn keeping view as thin as possible ⓘ
moving logic from view to presenter ⓘ
hasComponent Model ⓘ
Presenter ⓘ
View ⓘ
hasVariant Passive View ⓘ
Supervising Controller ⓘ
influencedBy Model-View-Controller ⓘ
ModelRole encapsulates application data ⓘ
encapsulates business logic ⓘ
originatedIn user interface design community ⓘ
PresenterRole acts as mediator between view and model ⓘ
handles presentation logic ⓘ
updates model based on user input ⓘ
updates view based on model ⓘ
primaryGoal improved maintainability ⓘ
improved modularity ⓘ
improved testability ⓘ
separation of concerns ⓘ
similarTo Model-View-Controller ⓘ
supports mocking of views ⓘ
test-driven development ⓘ
unit testing of presentation logic ⓘ
typicalCommunication model not directly aware of view ⓘ
presenter communicates with model ⓘ
view communicates with presenter ⓘ
usedBy .NET developers ⓘ
Android developers ⓘ
Java developers ⓘ
usedIn desktop applications ⓘ
graphical user interface applications ⓘ
mobile applications ⓘ
web applications ⓘ
ViewRole forwards user input to presenter ⓘ
renders user interface ⓘ

How these facts were elicited

Referenced by (1)

Full triples — surface form annotated when it differs from this entity's canonical label.

Model-View-Controller → relatedTo → Model-View-Presenter ⓘ