WHAT'S IN THIS CHAPTER?
An introduction to the MVC pattern
The MVC pattern's origins
How to implement the MVC pattern using compound patterns
Implementing the MVC pattern In Java EE
When and where to use the MVC pattern
WROX.COM CODE DOWNLOADS FOR THIS CHAPTER
The wrox.com code download for this chapter is found at www.wrox.com/go/
download and individually named according to the names throughout the chapter.
The model view controller (MVC) pattern is one of the most ubiquitous architectural design
patterns in modern application development that is listed in the topic from the Gang of Four.
It is built on the philosophy of separation of concerns and encapsulates the processing of
application data from the presentation of the data. Not encapsulating the processing of data
from the presentation of data leads to highly coupled systems that are hard to maintain and
extend. The separation of concerns that the MVC pattern provides makes modii cations to
both the business logic and the user interface much easier and more independent.
The MVC pattern is not much different than buying a subscription from a cable provider and
a TV set from an electrical store. One provides the content, and the other makes sure you
view it in the right way. Neither worries about the changes in the technology on the i eld. You
can always buy a new TV set when better panels are released or subscribe to more channels
without buying new hardware.
Developers of web applications use the MVC pattern extensively, and it is within this context
that its implementation will be discussed.