An architectural pattern commonly used for developing user interfaces that divides an application into three interconnected parts. This is done to separate internal representations of information from the ways information is presented to and accepted from the user. The MVC design pattern decouples these major components allowing for efficient code reuse and parallel development.

A variation is the MVVC with the use of View Models.

Model

The central component of the pattern. It is the application’s dynamic data structure, independent of the user interface. It directly manages the data, logic and rules of the application.

The model is responsible for managing the data of the application. It receives user input from the controller.

View

Any representation of information such as a chart, diagram or table. Multiple views of the same information are possible, such as a bar chart for management and a tabular view for accountants.

The view means presentation of the model in a particular format.

Controller

Accepts input and converts it to commands for the model or view.

The controller responds to the user input and performs interactions on the data model objects. The controller receives the input, optionally validates it and then passes the input to the model.

Sources:

https://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller

Last modified: March 22, 2019

Author

Comments

Write a Reply or Comment