MVC or MVP? You've probably heard about Microsoft's new ASP.NET MVC Framework.
MVC methodology divides an application's implementation into three component roles:
MVP approach divides an application's implementation into:
|View is more loosely coupled to the model. The presenter is responsible for binding the model to the view||Controller are based on behaviors and can be shared across views|
|Easier to unit test because interaction with the view is through an interface||Can be responsible for determining which view to display|
|Usually view to presenter map one to one. Complex views may have multi presenters|