Statements (51)
Predicate | Object |
---|---|
gptkbp:instanceOf |
gptkb:architecture
|
gptkbp:advantage |
improves maintainability
steeper learning curve can increase complexity improves code reusability improves testability may require more boilerplate code |
gptkbp:component |
gptkb:model
View ViewModel |
gptkbp:enables |
data binding
unit testing command binding |
gptkbp:focusesOn |
separating UI logic from business logic
|
https://www.w3.org/2000/01/rdf-schema#label |
MVVM architecture
|
gptkbp:influencedBy |
MVC architecture
MVP architecture |
gptkbp:ModelRole |
handles business logic and data
|
gptkbp:originatedIn |
gptkb:John_Gossman
2005 |
gptkbp:pattern |
architectural pattern
presentation pattern |
gptkbp:popularFor |
gptkb:Angular
gptkb:React gptkb:Xamarin gptkb:WPF gptkb:SwiftUI iOS development Android development |
gptkbp:promotion |
maintainability
separation of concerns testability |
gptkbp:relatedTo |
MVC architecture
MVP architecture Clean architecture |
gptkbp:standsFor |
gptkb:Model-View-ViewModel
|
gptkbp:supports |
two-way data binding
one-way data binding |
gptkbp:usedBy |
gptkb:Apple
gptkb:Google gptkb:Microsoft |
gptkbp:usedIn |
software development
user interface development mobile app development web app development desktop app development |
gptkbp:ViewModelRole |
acts as intermediary between View and Model
|
gptkbp:ViewRole |
displays data and receives user input
|
gptkbp:bfsParent |
gptkb:Android_Application_Framework
gptkb:Ext_JS |
gptkbp:bfsLayer |
7
|