MVC is an architectural design pattern in modern software development that promotes the separation of an application into three components:
- An application's data storage (model)
- An application's user interface (view)
- An application's logic (controller)
The following diagram maps Salesforce's components to this architectural design:
This architecture is used a lot in software development because the isolation of data (that is, the model), user interface (that is, the view), and logic (that is, the controller) allows each component to be developed, tested, and maintained independently.
- Model: This is actually where your data is stored and can be used. To store data, you need objects or fields, and these are considered to be part of the model.
- View: This is whatever end users see and interact with; that is, what displays data to the clients...