Yes, that's right,
MVC Divides interactive applications into three distinct components:
– Model: Contains core functionality and data.
– View: Displays information to user.
– Controller: Handles user input.
also it Includes a change-propagation mechanism to Ensures consistency between user interface
and model.
Model:
-Encapsulates data.
-Exports procedures that perform specific application processing (used by Controller on behalf of user).
-Provides functions to access Model’s data(Used by View, maybe Controller too).
-Manages change-propagation mechanism.
Maintains registry of components dependent on the model.
Views and controllers register their need to be informed about changes.
Changes in state of model trigger notifications.
• Responsibilities include:
– Providing functional core.
– Register dependent views and controllers.
– Notify dependent components about changes.
View
-Presents information to user(Different Views present information in different ways).
-Defines an update procedure that is activated by change-propagation mechanism in Model.
-Retrieves current data values to be displayed from Model.
-During initialization, associates itself with Model and registers for change notification.
-Corresponds to a single Controller.
-Offers functionality that allows Controller to manipulate display(E.g. scrolling).
Conroller:
-Accepts user inputs as events.
-Translates events into requests for the associated Model or View.
-Registers itself with Model if it depends on state of the Model in any way(E.g. A certain change in the Model results in a menu item being enabled or disabled).
from a document by:
Dr. Roger T. Alexander
rta@cs.colostate.edu
MHD Yasir Al-lahham