Microsoft MVP Visual C#
What is a MVVM?
How it is important to software development?
The Model-View-Presenter (MVP) pattern has
enjoyed popularity on various UI programming
MVP is a variation of the Model-View-Controller
pattern, which has been around for decades.
Martin Fowler published an article about a
pattern named Presentation Model (PM).
John Gossman, currently one of the WPF and
Silverlight Architects at Microsoft, unveiled the
Model-View-ViewModel (MVVM) pattern
The single most important aspect of WPF that
makes MVVM a great pattern to use is the data
Entirely remove the need for writing code in a
ViewModel that directly updates a view.
Can easily write code that tests
Visual designers, using MVVM makes it much easier
to create a smooth designer/developer workflow.
ICommand objects exposed by the ViewModel
When a ViewModel exposes an instance
property of type ICommand, the command
object typically uses that ViewModel object to
get its job done.
RelayCommand is a simplified variation of the
Implements the INotifyPropertyChanged