I had a little 'discussion' with a colleage of mine last week about the good use of words 'model' and 'data'.
I was saying that "my controller pass the model to the view and the view use the model to be constructed".
He said "no, your view use the data to be constructed, not the model. The model is the static view of an application, you don't pass nor manipulate the model".
I'm ok with the concepts and the differentiation between 'the model' (how the data is 'organized') and the 'data' ("User" class is the model, "surname" is a describing part of the model, and "bob" is the data, or the value), and his remark sound 'ok' for me...
Must we, all the time, talk strictly about "model" when talking about classes static structure, and "data" (or maybe "model's data") when talking about the 'dynamic" values ? Should we change the title above by 'Data change notification' ?
So should I start saying "My jsp use the data" and "the controller pass the data to the view" ? And "Springframeworkly speaking", why is there a Class named "ModelAndView" that says "Holder for both Model and View in the web MVC framework", where we should have called it "DataAndView" that should have said "Holder for both Data to be displayed and View in the web MVC framework" ???
Confronting all of this with the "MVC" definition confuse me even more : shouldn't it be renamed "Business Model", "View Model" and "Controller Model" ???
This confusion about strict term use and definition really puzzle me...
Any help on that matter would be greatly appreciated !
What your coworker probably was referring to, was more along the lines of "3 : structural design" - a UML diagram, for example, is a model of the software system.
In MVC, though, the term "Model" refers to something more specific: to a layer in the system. This is also often called the "Domain Model".
So I'd say that what you were saying wasn't *wrong*, just probably a little bit misleading to someone who isn't used to the MVC terminology.
The soul is dyed the color of its thoughts. Think only on those things that are in line with your principles and can bear the light of day. The content of your character is your choice. Day by day, what you do is who you become. Your integrity is your destiny - it is the light that guides your way. - Heraclitus