In our last chapter, we took an in-depth look at the MVC design pattern and built a sample application using four different frameworks that all use that pattern. We saw that each framework does things slightly differently in terms of models and views, and that each framework had the notion of a controller component, or an application component. The basic principles of the MVC design pattern have given rise to other similar patterns, for instance Model View Presenter (MVP) and Model View View Model (MVVM). When discussing this group of patterns together, they are described by some as Model View Whatever (MVW), or MV*.
Some of the benefits of this MV* style of writing applications include modularity and separation of concerns, which we will cover in later chapters. But this MV* style of building applications also brings with it a huge advantage—the...