Comp Sci MVC Architecture different in different sources

AI Thread Summary
In MVC architecture, user interaction typically begins with the controller, especially in Web 1.0 applications, while Web 2.0 applications may allow direct interaction with the view. The model does not send output directly to the view; instead, it should communicate through the controller to maintain the integrity of the architecture. If a view interacts directly with the model, it shifts the paradigm to MVVM rather than MVC. The emphasis in MVC is on preventing the view from altering the model's state. Understanding these distinctions is crucial for proper implementation of the architecture.
shivajikobardan
Messages
637
Reaction score
54
Homework Statement
Different architecture of MVC given, which one is most relevant?
Relevant Equations
None
3BjHU67RGFTUiIyksaXqk6M1YCbfSffYxcmizLCCiNVVJDOKMS.png

Source: https://www.chromeinfotech.net/blog/model-view-controller-architecture/
ICA0KIrKwg4asNZjWPOn-Qt5pKe3aeFcABLcFmBV-tGzefL0UH.png

Source: University of Virginia Computer Science, Engineering Department youtube lecture.

Here're my 2 questions:
1) Does user interacts first with a view or controller?
2) Does model sends output directly to view or via Controller?
 
Physics news on Phys.org
There are as many different interpretations of MVC architecture as there are programmers so there is no right answer here. Having said that I would rely more on the U. of Virginia than on some random one-man-band developer's blog.

To give this random one-man-band developer's thoughts:
Q1
In a Web 1.0 app (which is what is pictured in the second picture) there is no direct interaction between the user and the view, everything goes through the controller.
In a locally installed app, or in a Web 2.0 app, there may be direct interaction between the user and the view.

Q2
How data gets from the model to the view is not important, what is important in MVC is that a view must not be able to change state in a model. If the view does interact directly with the model then this becomes MVVM (model-view-viewmodel) rather than MVC.
 
  • Like
Likes shivajikobardan
Back
Top