WPF tutorial

Question :

What is MVVM ?

Answer :

MVVM stands for "Model View ViewModel"
MVVM was designed to make use of data binding functions in WPF to better facilitate the separation of view layer development from the rest of the pattern by removing virtually all GUI code (“code-behind”) from the view layer.
Instead of requiring user interface (UXi) developers to write GUI code, they can use the framework markup language (e.g., XAML) and create bindings to the view model, which is written and maintained by application developers. This separation of roles allows interactive designers to focus on UX needs rather than programming or business logic, allowing for the layers of an application to be developed in multiple work streams for higher productivity.
Even when a single developer works on the entire code base a proper separation of the view from the model is more productive as the user interface typically changes frequently and late in the development cycle based on end-user feedback.

Elements of the MVVM pattern include:
Model: as in the classic MVC pattern, the model refers to either a domain model which represents the real state content (an object-oriented approach), or the data access layer that represents that content (a data-centric approach).
View: as in the classic MVC pattern, the view refers to all elements displayed by the GUI such as buttons, labels, and other controls
View model: the view model is a “model of the view” meaning it is an abstraction of the view that also serves in mediating between the view and the model which is the target of the view data bindings.


also see MVVM Pattern Advantages and MVVM Pattern implementation and Examples
Previous Question Next Question