MVVM
MVVM stands for Model-View-ViewModel, an architectural pattern used to separate the development of the graphical user interface from the development of the business logic. It divides an application into three core components: the Model, which represents the domain data and business rules; the View, which is the user interface; and the ViewModel, an abstraction of the View that exposes the data and commands the View can bind to.
In MVVM, the View binds to properties and commands exposed by the ViewModel rather than directly to
The pattern is especially associated with XAML-based UI frameworks, including WPF, Silverlight, Xamarin.Forms, and UWP, where
A common point of comparison is with MVC; MVVM tends to decouple the View further by introducing