The MVC definition has been abused
4 days ago
- #UI Frameworks
- #MVC
- #Software Design
- Smalltalk MVC consists of Model, View, and Controller objects, with the Model being reusable and unaware of the View and Controller.
- Apple's Cocoa MVC deviates from Smalltalk MVC, treating Controllers as intermediaries and often making them the least reusable components.
- A key aspect of MVC is that the Model is observable, allowing Views to reflect its state without the Model being aware of the UI.
- Most UI frameworks embed the Model within the widget, leading to scalability issues and ambiguity.
- Writing observable models in languages like C or Pascal is cumbersome, contributing to MVC's misuse.
- MVC is a composite pattern, where the View may contain its own observable state (View's Model).
- Identifying complete models in a system is crucial but often overlooked, leading to fragmented incidental types.
- Function argument models are commonly ignored but essential for commands like delete, where preconditions must be observable.