Home >
While there has recently been an increase in the buzz regarding frameworks, design patterns, and MVC architectures, they really are not new concepts. In fact, the MVC design pattern has probably been around longer than a number of the people actively reading this blog.
The MVC (Model-View-Controller) architecture was conceived by Trygve Reenskaug at Xerox PARC in 1979 while working with SmallTalk. MVC originated in desktop applications, and relatively recently made its way into web based applications. Many modern RIA frameworks closely resemble the older desktop client-server architecture, and the resurgence of MVC popularity makes sense.
I found these links to be particularly interesting on the topic of MVC, and they are in the words of the original MVC creator himself:
MVC XEROX PARC 1978-79
A description of MVC and its origins.
MODELS - VIEWS - CONTROLLERS
A great description of the logical components of MVC.
The Model-View-Controller (MVC) Its Past and Present
More detail about the MVC pattern and its evolution.
You can learn more about MVC, and its application to various technologies at: http://en.wikipedia.org/wiki/Model-view-controller
The concepts introduced by the model-view controller pattern are the driving factors for all major Flex frameworks, including:





Facebook Application Development
Lol @ : "the MVC design pattern has probably been around longer than a number of the people actively reading this blog. " This blog is not even 1 year old is it?
Hah, No i mean the average age of people reading the blog. Not the age of the blog itself. :)
Is there anywhere a comparison for the different frameworks?
I'm familiar with some of them, but I haven't even heard others.
An interesting take on the past and future of MVC in the context of webapps.
http://www.appcelerant.com/mvc_is_dead.html
-Quin'
Matthew Quinlan
Chief Evangelist
www.Appcelerator.com
MVC is a good idea, and yet there is a great deal of dissatisfaction with "MVC frameworks" for developing web applications.
The problem, as I see it, is not the separation of model, view and controller, which is still a good idea. I think the real problem is with the use of XML for encoding control, and the use of HTML with embedded logic (in the form of scriptlets, custom tags, or tags from a standard tag library) for creating the view.
In desktop applications, even where the MVC pattern is used, all three parts are coded using an object-oriented programming language. Only a very few web frameworks (e.g. Wicket, GWT, Echo) take this approach. (These frameworks don't automatically separate M,V and C from each other, but they allow the user to do so just as they can when writing a desktop application.)
I have to update a flash program and I don't know MVC. The update normally takes 20 minutes but since it's in MVC I can't do it and the programmer estimates 2 hours. How is this not crap.