MVC (Model-View-Controller) is a software architecture pattern that enforces separation of concerns.
MVC (Model-View-Controller) is a software architecture pattern that enforces separation of concerns. By isolating these components development, testing and maintenance can occur independently, reducing dependencies in the code.
Model
The model concerns itself with how the data is stored, retrieved and the business concepts that derive from the data should be interpreted.
View
The view concerns itself with how the data is presented, formatted and interacted with.
Controller
The controller concerns itself with the rules for how the view may change the model, what information can be accessed and what changes are allowed to be made.