Model-View-Controller (MVC) is a design pattern put together to help control change. MVC decouples interface from business logic and data.
- Model : The model contains the core of the application's
functionality. The model encapsulates the state of the application. Sometimes
the only functionality it contains is state. It knows nothing about the view or
- View: The view provides the presentation of the model. It is the
look of the application. The view can access the model getters, but it
has no knowledge of the setters. In addition, it knows nothing about the
controller. The view should be notified when changes to the model occur.
- Controller:The controller reacts to the user input. It creates and sets the model.