MVC is a pattern that is used to create rich, interactive user interfaces: just the sort of interfaces that are becoming more and more popular on the Web.
The astute amongst you will have already figured out that the pattern is made up of three major components: model, view, and controller:
The preceding diagram shows the relationship between the three components in MVC.
The model contains the state of the program. In many applications, this model is contained in some form in a database. The model may be rehydrated from a persistent store (such as the database) or it can be transient. Ideally, the model is the only mutable part ...