Note: this article is published on 04/21/2021.
These will be a series of articles about Design Patterns. We start from MVC Pattern:
- Design Pattern (0), Overview
- Design Pattern (1), MVC --- this article
- Design Pattern (2), MVVM
- Design Pattern (3), Singleton
- Design Pattern (4), Desposal
- Design Pattern (5), Dependency Injection
Introduction
The discussions in this article will be as following,
- History
- What is MVC Pattern
- Why is MVC: Separate of Content by MVC
A: History
We talk about the Design pattern history because since the pattern as an architectural concept introduced in 1977, and design patterns gained popularity by the book of "Gang of Four" in 1994 as a main stone, the MVC design pattern was introduced by Trygve Reenskaug in 1979, that is a pioneer work in the design pattern field.
A-1: Design Pattern[ref]
"Patterns originated as an architectural concept by Christopher Alexander as early as 1977. In 1987, Kent Beck and Ward Cunningham began experimenting with the idea of applying patterns to programming – specifically pattern languages – and presented their results at the OOPSLA conference that year.
"Design patterns gained popularity in computer science after the book Design Patterns: Elements of Reusable Object-Oriented Software was published in 1994 by the so-called "Gang of Four" (Gamma et al.), which is frequently abbreviated as "GoF". That same year, the first Pattern Languages of Programming Conference was held."
A-2: MVC Pattern[ref]
"Trygve Reenskaug is attributed with the formulation of the Model View Controller pattern in 1979 while working at XEROX’ Palo Alto Research Center (PARC). You can refer to the original paper here, where it was originally referred to as Thing-Model-View-Controller. MVC was developed to solve the problem of users controlling large and complex data sets. The following rather unique image explains the main purpose of MVC – to bridge the gap between a User’s mental Model and the digital model that exists in the computer (original source)."









Join the conversation! Your thoughts help the community grow.