MVVM
/ˌɛm.viː.viːˈɛm/ · Abbreviation · Development
Definitions
MVVM (Model-View-ViewModel) is a UI architecture pattern that separates presentation from business logic using data binding. The Model holds data and business rules. The View defines the visual layout and binds declaratively to properties and commands exposed by the ViewModel. The ViewModel acts as an intermediary, transforming Model data into a form the View can display and forwarding user actions back to the Model. Because the View binds to the ViewModel reactively, UI updates happen automatically when data changes, eliminating manual DOM or widget manipulation. MVVM originated in Microsoft's WPF framework and is now core to SwiftUI, Jetpack Compose, Vue.js, and Knockout.js. The pattern makes UI logic highly testable because ViewModels can be verified without rendering a real interface.
In plain English: A pattern where the screen automatically updates whenever the underlying data changes, without manual refresh code, abbreviated from Model-View-ViewModel.
Example: "In MVVM the View just observes the ViewModel's published properties — when the data changes, the UI re-renders automatically."