juniorDesign Patterns
What is the MVC (Model-View-Controller) Pattern?
Updated Apr 28, 2026
Short answer
An architectural pattern that separates an application into three main logical components: Model, View, and Controller.
Deep explanation
The Model manages data and business logic. The View handles layout and display. The Controller routes commands to the model and updates the view. This separation of concerns makes large applications manageable and testable.
Real-world example
Traditional web frameworks like Ruby on Rails, Django, or ASP.NET MVC.
Common mistakes
- Putting business logic in the Controller (fat controllers) instead of the Model.
Follow-up questions
- What is the difference between MVC and MVVM?