2

I read a lot of articles about MVC, MVP and MVVM. Most of the articles mentions MVP and MVVM in the same way. But only in some, it is mentioned that core part of MVVM is binding. WPF is a good example.

Is there any difference between MVP and MVVM other than binding ?

Vivek Mohan
  • 8,078
  • 8
  • 31
  • 49
  • 4
    No answers for you at [MVC / MVP / MVVM What the Heck?](http://stackoverflow.com/questions/1298428/mvc-mvp-mvvm-what-the-heck?rq=1) or [What are the differences between MVC, MVP and MVVM?](http://stackoverflow.com/questions/11877575/what-are-the-differences-between-mvc-mvp-and-mvvm?rq=1) (or any other topic on the right hand side under "related"...) – crashmstr Aug 26 '15 at 15:02
  • 3
    Does this answer your question? [MVC / MVP / MVVM What the Heck?](https://stackoverflow.com/questions/1298428/mvc-mvp-mvvm-what-the-heck) – prad Jan 09 '20 at 06:29

2 Answers2

6

In MVP a Presenter has reference/access to the View, i.e. you can directly bind to Click events or call a control's method from the Presenter. In MVVM this isn't allowed, as this breaks it.

This means, the Presenter in MVP is tied to the view and can't be reused across different views (MVVM there is usually 1:1 reference between VM and View) or between different Applications (WinPhone, Desktop, Xamarin, Silverlight versions) and that the Presenter is responsible for reading and updating the View (when a value changes). In MVVM, the View (via binding) does this synchronisation, the VM only "notifies" the View when a value changes

Tseng
  • 61,549
  • 15
  • 193
  • 205
0

There is a difference in thought and design process when choosing Architecture patterns. See a discussion here https://blog.kloud.com.au/2018/01/17/xamarin-application-architecture/

Pulkit Sethi
  • 1,325
  • 1
  • 14
  • 22