A widely used phrase in programming is MVC which stands for Model View Controller. It takes a software application and splits it into 3 interconnected components:
- Models are the guts of the application. Behind the scenes and hidden from the user, they control the behaviors of the application.
- Views are what the user sees and how the output from the models are represented on the display.
- Controllers interact between the models and views. A controller can tell a model to change it’s state and then notify the view to change it’s representation based on that state change.