CSC/ECE 517 Fall 2007/wiki2 3 bp

From Expertiza_Wiki
Revision as of 05:11, 21 October 2007 by Bmparees (talk | contribs)
Jump to navigation Jump to search

Model-View-Controller Review of Resources

Written by Ben Parees

quick overview of mvc

The Model-View-Controller pattern, referred to as MVC in most literature, is a way of structuring code to achieve separation of concerns. In this case, the three concerns are managing the physical data, representing the data to the user, and tying the representation of the data to the physical data in such a way that it can be manipulated by the user. These three concerns are managed by:

  • the model, which handles the physical data storage and retrieval
  • the view, which handles the graphical display of the data to the user
  • the controller, which maps user input on the view into manipulation of the physical data in the model
  • The rest of this page provides links to websites which provide more in depth information describing MVC, examples of its usage, and specific tutorials for using MVC in Java and Ruby, along with reviews of those sites.

    introductory sites

    quick overviews

    These sites provide a 5 minute overview of the basic concept of Model-View-Controller.

    http://www.mercurytide.co.uk/whitepapers/separating-structure-presentation-and-behaviour/ Starting approximately 1/3 of the way down the page, this website gives the classic definitions of model, view, and controller. In addition, it provides a short discussion on the advantages of the MVC approach. Finally, it provides a short example of how to separate a web page into the view (done in xhtml) and the controller (done in javascript). This example is not fully fleshed out and thus not paticularly useful as a starting point for someone implementing MVC on their own, but it provides a good demonstration of what sort of things belong in the controller and which belong in the view. This lends a certain concreteness to the concepts described in the MVC definition section of the page.


    http://struts.javabeat.net/tutorials/ This website provides a very short overview of MVC by defining model, view, and controller. It is a somewhat Struts centric, however the definitions are general to MVC as a whole. The bottom of the page contains a useful diagram of the MVC components. Although this diagram is labeled in terms of Struts components, it is useful and easily comprehended even by a user who is not implementing the MVC pattern using Struts. (See the Implementing MVC in Java section for web pages which discuss Struts in depth).

    http://en.wikipedia.org/wiki/Model-view-controller

    http://hubpages.com/hub/MVC

    http://doc.trolltech.com/4.3/model-view-introduction.html

    http://www.indiawebdevelopers.com/technology/java/mvcarchitecture.asp

    http://www.perlmonks.org/?node_id=402070

    http://msdn2.microsoft.com/en-us/library/ms978748.aspx

    http://developer.apple.com/documentation/Cocoa/Conceptual/ObjCTutorial/chapter02/chapter_2_section_3.html

    http://www.adobe.com/devnet/flash/articles/mv_controller/as2ess_ch18.pdf

    http://www.mobilefish.com/popupwindow/mvc_song.html

    http://www.mobilefish.com/tutorials/mvc/mvc.html

    http://ootips.org/mvc-pattern.html

    http://c2.com/cgi/wiki?ModelViewController

    http://www.themolehill.com/index.php/2006/07/29/beginners-guide-model-view-controller-mvc-architecture/

    http://www.practicalecommerce.com/blogs/developers-diary/archives/92

    http://best-practice-software-engineering.ifs.tuwien.ac.at/patterns/mvc.html

    http://slash7.com/articles/2005/2/22/mvc-the-most-vexing-conundrum

    http://orderedlist.com/articles/rails-and-mvc

    example sites

    examples of when to use mvc/how to use the parts

    http://java.sun.com/blueprints/patterns/MVC.html

    http://java.sun.com/blueprints/patterns/MVC-detailed.html

    http://www.informit.com/guides/content.aspx?g=java&seqNum=117

    http://www.codersource.net/aspnet_model_view_controller_sample.html

    https://users.cs.jmu.edu/bernstdh/web/common/lectures/slides_model-view-controller_pattern.php

    http://www.articlegold.com/Article/Simple-J2EE-Model-View-Controller-Type-II-Framework/6091

    http://www.enode.com/x/markup/tutorial/mvc.html

    http://www.csis.pace.edu/~bergin/mvc/mvcgui.html

    http://www.developer.com/java/ent/article.php/3336761

    http://www.slideshare.net/codeinmotion/mvc-demystified-essence-of-ruby-on-rails

    how to build an mvc application

    mvc in ruby - rails

    http://www.onlamp.com/pub/a/onlamp/2006/12/14/revisiting-ruby-on-rails-revisited.html


    http://www.devarticles.com/c/a/Ruby-on-Rails/Getting-Started-with-Ruby-on-Rails/2/

    http://www-128.ibm.com/developerworks/linux/library/l-rubyrails/

    http://www.webmonkey.com/05/28/index4a.html

    http://rails.homelinux.org/

    http://instantrails.rubyforge.org/wiki/wiki.pl

    http://www.sitepoint.com/article/ruby-on-rails

    mvc in java - general

    http://www.oracle.com/technology/sample_code/tech/java/jsps/ojsp/mvc.html

    http://javadude.com/articles/vaddmvc2/mvc2.html

    http://www.leepoint.net/notes-java/GUI/structure/40mvc.html

    http://www.javaworld.com/javaworld/jw-12-1999/jw-12-ssj-jspmvc.html

    http://www.uta.fi/~jl/pguibook/mvc.html

    http://www.csis.pace.edu/~bergin/papers/ModelViewController.html

    mvc in java - struts

    http://www.ibm.com/developerworks/web/library/j-struts/

    http://www.theserverside.com/tt/articles/content/StrutsFastTrack/StrutsFastTrack.pdf

    http://struts.apache.org/1.x/userGuide/introduction.html

    http://struts.javabeat.net/tutorials/1-introduction-to-the-apache-struts.php

    http://www.roseindia.net/struts/strutsguide.shtml


    additional references

    Model/view/controller. There are literally hundreds of pages describing MVC on the Web. If someone wants to learn about it, what should (s)he do? Look at the first few hits in Google? I expect we can do better than that. Write a review of the MVC sites on the Web. Which are best for learning about the concept? Which have the most instructive examples? Which are best for explaining how to use the pattern in Ruby and Java? If you choose this topic, you should be sure to peruse at least several dozen sites.