All Topics
All Topics
Technology
Technology
Design
Design
Programming
Programming
Science
Science
News
News
Gaming
Gaming
Entertainment
Entertainment
Business
Business
Finance
Finance
Sports
Sports
Health
Health
Food
Food
Travel
Travel
Art
Art
Music
Music
Books
Books
Education
Education
Politics
Politics
Personal
Personal
No algorithm. No AI slop. No ads. Just RSS. Pro-human. Indie writers. Real journalism. Open web. Chronological. Hand toasted.

The corruption of MVC: How the original design pattern was misunderstood and misapplied

By

csb6

8mo ago· 7 min readenOpinion

Summary

This article critiques how the original Smalltalk MVC (Model-View-Controller) design pattern has been misunderstood and misapplied over the years, particularly by major platforms like Apple. The author traces the evolution of MVC definitions, highlighting how the original intent—where the Controller handles user input and the View handles display—has been corrupted into a pattern where the View and Controller are conflated. The piece argues that modern interpretations (especially Apple's Cocoa MVC) have led to bloated, unmanageable controllers and a loss of the pattern's original clarity and separation of concerns.

Key quotes

· 3 pulled
MVC Consists of three kinds of objects. The Model is the application object, the View is its screen presentation, and the Controller defines the way the user interface reacts to user input.
A view object knows how to display and possibly edit data from the application's model… A controller object acts as the intermediary between the application's view objects and its model objects…
However this definition has been abused over the years - Back in 2003 I gave a talk citing how bad Apple's definition was.
Snippet from the RSS feed
stlab hosts modern, modular C++ algorithms and data structures.

You might also wanna read