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
Jordan 2 years ago committed by GitHub
parent 594be6e91e
commit dfea94c62f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 12
      content/roadmaps/114-software-architect/content/105-patterns-and-design-principles/101-mvc-mvp-mvvm.md

@ -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…
Cancel
Save