Hasty Briefsbeta

The MVC definition has been abused

3 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.