Introduction To WPF/MVVM/PRISM (Open Discussion Following). What is WPF. Successor To Win Forms (Desktop) Builds Aesthetically Pleasing Interfaces (but much more than just a “pretty face”….more on this later) Segue To Silverlight Web(subset of WPF)
MVVM Data Flow - Model
MVVM Data Flow - ViewModel
MVVM Data Flow – View
PRISM is a set of DLL’s AND Source Code available for free and is Microsoft’s “Toolkit” for doing WPF MVVM. It automates much of the MVVM plumbing (another good toolkit for learning the MVVM pattern that is not as automated is the MVVM Light Toolkit at http://mvvmlight.codeplex.com)
One of it’s main’s main advantage is that it automates much of the MVVM pluming via “Inversion Of Control” (objects are passed into other objects that use them rather than instantiating them internally) and “Dependency Injection” (automatically doing IOC)
The other main advantage is that it creates the concept of “Modules” which can be independently developed (by other developers, groups or even companies) and tested. These modules communicated with each other via the PRISM’s “EventAggragator” via “Publish” and “Subscribe” messaging.