Chapter 5. Web Application Architecture

The first few chapters of this book introduced you to several core concepts that are essential to understanding how to use the ASP.NET MVC Framework. This chapter builds upon those core concepts, elaborating on the fundamental design patterns and principles used to build the ASP.MVC Framework and exploring how to apply these patterns and principles to build an ASP.NET MVC web application.

The Model-View-Controller Pattern

The Model-View-Controller (MVC) pattern is a user interface architecture pattern that promotes separation of concerns across multiple application layers. Instead of putting all the logic and data access code for an application in a single place, MVC promotes separating the application’s logic into specific classes, each with a small, specific set of responsibilities.

The MVC pattern is not a new concept, and it’s certainly not specific to the .NET Framework or even to web development; in fact, it was originally created by the programmers at Xerox PARC in the late 1970s and applied to applications that used the SmallTalk programming language. Since that time, many have considered MVC one of the most misquoted patterns ever created. This is because MVC is a very high-level pattern that has engendered many related implementations and subpatterns.

Separation of Concerns

Separation of concerns is a computer science principle that promotes separating the responsibility for an application or use case across multiple components, where ...

Get Programming ASP.NET MVC 4 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.