Software Architecture Guide

Graphical user interfaces provide a rich interaction between the user and a software system. Managing such richness is complex, so it’s important to accommodate that complexity with a thoughtful architecture. The Forms and Control pattern works well for systems with simple flows, but as it breaks under the load of greater complexity, most people turn to “Model-View-Controller” (MVC). Sadly, MVC is one of the most misunderstood architectural patterns, and systems using that name exhibit many significant differences, which are sometimes described under the names application model, model-view-presenter, presentation model, MVVM, and similar names. The best way to think about MVC is as a set of principles that include separating presentation from domain logic and synchronizing presentation state through events (the Observer pattern).



<a href

Leave a Comment