Model-View-Controller (MVC) Software Architecture Pattern: Difference between revisions

 
m (Text replacement - " " to " ")
 
(8 intermediate revisions by the same user not shown)
Line 4: Line 4:
** …
** …
* <B>Counter-Example(s):</B>
* <B>Counter-Example(s):</B>
** a [[Three-Tier Architecture Pattern]] [http://en.wikipedia.org/wiki/Three-tier_architecture]
** a [[Three-Tier Architecture Pattern]] [http://en.wikipedia.org/wiki/Three-tier_architecture].
* <B>See:</B> [[Web Application Framework]], [[Scala Play Platform]].
** a [[Model-View-Presenter (MVP) Architecture]].
** a [[Model-View-Intent (MVI) Architecture]].
* <B>See:</B> [[MVVM Pattern]], [[Web Application Framework]], [[Scala Play Platform]].


----
----
Line 14: Line 16:
=== 2013 ===
=== 2013 ===
* http://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller
* http://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller
** '''Model–view–controller</B> ('''MVC</B>) is a [[software architecture]] pattern which separates the representation of information from the user's interaction with [[it]].<ref>"More deeply, the framework exists to separate the representation of information from user interaction." [http://www.artima.com/articles/dci_vision.html The DCI Architecture: A New Vision of Object-Oriented Programming] - [[Trygve Reenskaug]] and [[James Coplien]] - March 20, 2009.</ref><ref name=burbeck>"... the user input, the modeling of the external world, and the visual feedback to the user are explicitly separated and handled by three types of object." [http://st-www.cs.illinois.edu/users/smarch/st-docs/mvc.html Applications Programming in Smalltalk-80(TM):How to use Model-View-Controller (MVC)].</ref> The ''model'' consists of application data, business rules, logic, and functions. A ''view'' can be any output representation of data, such as a chart or a diagram. Multiple views of the same data are possible, such as a bar chart for management and a tabular view for [[accountant]]s. The ''controller'' mediates input, converting it to commands for the model or view.<ref>[http://www.codeproject.com/Articles/25057/Simple-Example-of-MVC-Model-View-Controller-Design Simple Example of MVC (Model View Controller) Design Pattern for Abstraction]</ref>
** '''Model–view–controller</B> ('''MVC</B>) is a [[software architecture]] pattern which separates the representation of information from the user's interaction with [[it]].<ref>"More deeply, the framework exists to separate the representation of information from user interaction." [http://www.artima.com/articles/dci_vision.html The DCI Architecture: A New Vision of Object-Oriented Programming] - [[Trygve Reenskaug]] and [[James Coplien]] - March 20, 2009.</ref><ref name=burbeck>"... the user input, the modeling of the external world, and the visual feedback to the user are explicitly separated and handled by three types of object." [http://st-www.cs.illinois.edu/users/smarch/st-docs/mvc.html Applications Programming in Smalltalk-80(TM):How to use Model-View-Controller (MVC)].</ref> The ''model'' consists of application data, business rules, logic, and functions. A ''view'' can be any output representation of data, such as a chart or a diagram. Multiple views of the same data are possible, such as a bar chart for management and a tabular view for [[accountant]]s. The ''controller'' mediates input, converting it to commands for the model or view.<ref>[http://www.codeproject.com/Articles/25057/Simple-Example-of-MVC-Model-View-Controller-Design Simple Example of MVC (Model View Controller) Design Pattern for Abstraction]</ref>
** <HTML><IMG HEIGHT=500 SRC=https://upload.wikimedia.org/wikipedia/commons/a/a0/MVC-Process.svg></HTML>
<references/>
<references/>
=== 2021 ===
* https://www.freecodecamp.org/news/the-model-view-controller-pattern-mvc-architecture-and-frameworks-explained/
** QUOTE: MVC stands for model-view-controller. Here's what each of those components mean:
*** Model: The backend that contains all the data logic
*** View: The frontend or graphical user interface (GUI)
*** Controller: The brains of the application that controls how data is displayed
** <HTML><IMG HEIGHT=300 SRC=https://www.freecodecamp.org/news/content/images/2021/04/MVC3.png></HTML>


----
----

Latest revision as of 07:55, 19 June 2023

A Model-View-Controller (MVC) Software Architecture Pattern is a software architecture pattern that separates information representation from user interaction.



References

2013

  • http://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller
    • Model–view–controller (MVC) is a software architecture pattern which separates the representation of information from the user's interaction with it.[1][2] The model consists of application data, business rules, logic, and functions. A view can be any output representation of data, such as a chart or a diagram. Multiple views of the same data are possible, such as a bar chart for management and a tabular view for accountants. The controller mediates input, converting it to commands for the model or view.[3]
  1. "More deeply, the framework exists to separate the representation of information from user interaction." The DCI Architecture: A New Vision of Object-Oriented Programming - Trygve Reenskaug and James Coplien - March 20, 2009.
  2. "... the user input, the modeling of the external world, and the visual feedback to the user are explicitly separated and handled by three types of object." Applications Programming in Smalltalk-80(TM):How to use Model-View-Controller (MVC).
  3. Simple Example of MVC (Model View Controller) Design Pattern for Abstraction

2021