Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Mvc devan


Published on

Published in: Technology, Education
  • Be the first to comment

  • Be the first to like this

Mvc devan

  1. 1. Model-View-ControllerArchitectureDevan M.S.
  2. 2. What is MVC?Architectural design pattern which works toseparate data and UI for a more cohesive andmodularized system
  3. 3. What is MVC?Model represents the data model− “Manages behavior and data of the applicationdomain”View represents the screen(s) shown to theuser− “Manages the graphical and/or textual output to theportion of the bitmapped display that is allocated toits application”Controller represents interactions from the userthat changes the data and the view− “Interprets the mouse and keyboard inputs from theuser, commanding the model and/or the view tochange as appropriate” (Burbeck)
  4. 4. How did it come about?Presented by Trygve Reenskaug in 1979First used in the Smalltalk-80 framework− Used in making Apple interfaces (Lisa andMacintosh)
  5. 5. How does it work?User inputs a commandController handles input and updates model orchanges the viewView, which relies on model to show data touser, updates if necessaryRinse and Repeat
  6. 6. What is MVC?
  7. 7. What’s the point?Provides a logical structure for heavilyinteractive systemAdheres to good engineering design principlesand practices− Information hiding, less coupling, simplicity, etc.− Delegated control style
  8. 8. What’s the point? Just plain easier (even if it doesn’t look it)!• Study shows that most introductory CS collegestudents tend to clump a UI program into one bigmonolithic main class• Unfamiliarity stems from student tendency toprogram according to styles presented in textbooksand not being introduced to design principles early(Morse)
  9. 9. ConclusionMVC is a sound architectural design foralmost any GUI application
  10. 10. ConclusionMVC is a sound architectural design foralmost any GUI application