MVC
/ˌɛm.viːˈsiː/ · Abbreviation · Development
Definitions
MVC (Model-View-Controller) is an architectural pattern that separates an application into three interconnected components. The Model manages data, business rules, and state. The View renders the user interface and displays data from the Model. The Controller handles user input, updates the Model, and selects the appropriate View. This separation allows developers to modify the UI without touching business logic, and vice versa. MVC originated in Smalltalk in the late 1970s and became the dominant pattern for web application frameworks including Ruby on Rails, Django, Laravel, Spring MVC, and ASP.NET MVC. Variations like MVP (Model-View-Presenter) and MVVM (Model-View-ViewModel) adapt the core idea for different platforms and binding styles.
In plain English: A popular way of organizing code into three parts — data, display, and the logic connecting them — abbreviated from Model-View-Controller.
Example: "Rails practically is MVC — your models are ActiveRecord classes, views are ERB templates, and controllers are the glue in between."