03-10-2016, 10:40 AM
1457424743-mvcseminar.pdf (Size: 411.95 KB / Downloads: 48)
Introduction
Why focus on Model-View-Controller Architecture?
• What's a Software Design Pattern?
• Why should programmers care about Design
Patterns
Why focus on Model-ViewController
Architecture?
The topic of this presentation is MVC - Model-View-Controller - architecture in web
applications. This topic was selected because it allows us to look at web appliation
development in overview, before getting into the nitty gritty of the many component
parts of implementing a web app.
MVC is a fundamental and high-level design pattern for programming in the J2EE
architecture toward which the UC Berkeley campus is gravitating in response to the
E-Architecture guidelines established by the campus's Information Technology
Architecture Committee (ITAC) in 2001.
What's a Software Design
Pattern?
The idea of Design Patterns in software engineering grew out of work by Emeritus
Professor Christopher Alexander of UC Berkeley's own architecture department.
Professor Alexander's ideas were most notably applied to Software Engineering by
four authors of the book Design Patterns: Elements of Reusable Object-Oriented
Software, collectively nicknamed the "Gang of Four." This book identifies about
two dozen fundamental patterns for solving recurring problems in software
engineering.
Brad Appleton's article Patterns and Software: Essential Concepts and Terminology
gives a good overview of Design Patterns applied to software programming. The
Design Patterns... book, by Erich Gamma, Richard Helm, Ralph Johnson, and John
Vlissides, is a resource of inestimable value.
Why should programmers care
about Design Patterns?
It has become widely accepted among software engineers and architects that designing
applications in explicit conformity to these patterns facilitates the re-use of insight and
experience gleaned by the best and brightest among us over the course of thousands of
real-world software development efforts.
In short, thinking in terms of Design Patterns will make you a better programmer.