Abbreviated as MVC, Model-View-Controller is the term used to describe a software paradigm that separates objects into one of three categories:
- models for maintaining data
- views for displaying all or a portion of the data
- controllers for handling events that affect the model or views.
In this separation, the view and controller depend on the model. However, the model does not depend on either of the two making it so the model can be built and tested independent of the visual presentation.
The Struts Framework is one of many examples of Web application development standards that is based on the Model-View-Controller design paradigm.