Add: MVC, MVP, MVVM (#2177)
* Add description of MVC, MVP, MVVM and resource * Update content/roadmaps/114-software-architect/content/105-patterns-and-design-principles/101-mvc-mvp-mvvm.md Co-authored-by: Kamran Ahmed <kamranahmed.se@gmail.com>pull/2181/head
parent
594be6e91e
commit
dfea94c62f
1 changed files with 11 additions and 1 deletions
@ -1 +1,11 @@ |
||||
# Mvc mvp mvvm |
||||
# MVC MVP MVVM |
||||
|
||||
Model-view-controller, or MVC, is a pattern used to separate user-interface, data and application logic. |
||||
It does this by separating an application into three parts: Model, View, and Controller. The model holds the data, the view encompasses the user-interface, and the controller acts as a mediator between the two. |
||||
|
||||
Model-view-presenter, or MVP, was designed to ease automated unit testing and improve the separation of concerns in presentation logic. MVP is a variant of the MVC pattern, though differs in that it divides the application into the user-interface (view), data (model) and presentation logic (presenter). While the model and the view represent stay the same as in the model-view-controller pattern, the presenter differs from the controller in that it manipulates the model and updates the view. |
||||
|
||||
Another variant of the MVC is the model-view-viewmodel pattern. The Model-view-viewmodel, or MVVM, separates the application into three core components: Model, View, and View Model. While the view and model represent all that they did in their parent pattern, the view model acts as a link between the model and view, retrieves data from the model and exposes it to the view through two-way data binding and can manipulate the model's data. |
||||
|
||||
<ResourceGroupTitle>Free Content</ResourceGroupTitle> |
||||
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://medium.com/@ankit.sinhal/mvc-mvp-and-mvvm-design-pattern-6e169567bbad'>MVC, MVP and MVVM Design Pattern</BadgeLink> |
||||
|
Loading…
Reference in new issue