Introduction To
MVP
PRESENTED IN TABRIZ SOFTWARE OPEN TALKS
SAEED SHARGI GHAZANI
@saeed_shargi
Problem
Solution’s
• Ugly
• Spaghetti Code
• Not Reusable
• Not Maintenance
• Not SRP
• Not Testable
Solution’s
• Bad
• Spaghetti Code
• Not Reusable
• Hard Maintenance
• Not SRP
• Not Testable
Solution’s
Forms and Controls
Model View Controller
VisualWorks Application Model
Model-View-Presenter (MVP)
Humble View
Martin Fowler
MVP
A GUI Design Pattern (Architecture)
Derivation of MVC
Early in 1990s at Taligent
Popularized in a paper by Taligent CTO Mike Potel
In 1997,Andy Bower and Blair McGlashan adapted it in Smalltalk UI
In 2006,Microsoft incorporating it for UI programming in .NET Framework
MVP
MVP
Advantages
SRP
Unit Test
Easier Maintain
Easily Interchangeable Views
Reusable
Disadvantages
Complexity
A little Trouble
Maybe not for simple and small applications
Implementation
Passive View
Supervising Presenter (Controller)
Passive View
Supervising Presenter
Implementation Frameworks
.NET
MVC# Framewok
Winforms MVP
Claymore
…
PHP
Nette Framework
Java
Swing
JFace
GWT
Google Web Toolkit
…
MVC
MVVM
MVC vs MVP
MVVM vs MVP
MVC vs MVVM vs MVP
Example Code In GitHub
Introduction To Model View Presenter

Introduction To Model View Presenter