I am just getting started with the MVVM Pattern. I have been accumulating information that is starting to spill over. I figured it was time to consolidate the information into a post.
Introduced in 2005 by John Gossman, the Model-View-ViewModel pattern enables loose coupling between the view, its related code, and the model, resulting in increased testability, flexibility, and maintainability of the application.
Jason Dolinger, Senior Engineer at Lab49 has an excellent presentation (1hr 30min) on the evolution of building MVVM applications from a classic WinForms perspective to using MVVM as well as a blog post that contains links to the original source code for the presentation.
In his presentation, Jason ignores the ‘Model’ component of the MVVM pattern. Josh Smith and Craig Shoemaker‘s MVVM video for WPF addresses the relationship between the Model and ViewModel (as well as other things).
- Introduction to Model/View/ViewModel pattern for building WPF apps by John Gossman
- WPF Apps With The Model-View-ViewModel Design Pattern by Josh Smith.
- 5 Minute Overview of MVVM in Silverlight by John Papa.
- MVVM Design Pattern for Silverlight Applications by Jonas Follesoe.
- Understanding Routed Events and Commands In WPF.
- CodeProject Articles by Josh Smith.
- (Data)Model-View-ViewModel Pattern Blog Series by Dan Crevier.
- MVVM Blog Series by Kent Boogaart.
- MVVM Foundation on CodePlex.
- Ask Dr. WPF
- Exploring a Model-View-ViewModel Application; WPF Password Manager, Cipher Text.
- M-V-VM TRAINING DAY SAMPLE APPLICATION AND DECKS.
- MVVM Blog Posts by Karl Shifflett.
- VMWorkshop – The VM Workshop is a simple reference application demonstrating the Model View ViewModel (MVVM) and Presentation Model pattern in a number of different UI platforms.