What is MVC? - nairuzabulhul/Technical-Terms GitHub Wiki

Log

#MVC(Model View Controller):

is a software design pattern that consists of three separated components:

1- Model: is the back-end of the program or application where is responsible for the data storage and management as well as the back-end logic

2- View is simply the interface that the user sees when interacts with the application or program

3- Controller: is the connector (chain) between the interface and the and model. it takes requests from the user and transfers it to the model (Back-end), and vice versa.

##There is a good example from StackOverflow:

Let's draw an analogy from a program written using MVC to an Apple store:

The Model is the backroom. It stores iGoods and organizes them.

The View is the showroom of the store. It displays iGoods so that customers can see them.

The Controller is the employee. She responds to customers, taking or returning iGoods to the backroom.