The purpose of a design pattern like the model view controller (MVC) is to decouple data access and business logic from the user interface (UI) to allow separation of concerns.
MVC is a software design pattern commonly used for developing user interfaces that divide the related program logic into three interconnected elements. This is done to separate the internal representation of information from the ways information is presented to and accepted by the user.
Model: The central component of the pattern. It represents the state of the application i.e. data. It can also have business logic to update the controller if its data changes.
Controller: It acts as an interface between view and model. The controller intercepts all the incoming requests.



