The Model-View-Controller (MVC) framework is an architectural pattern that separates an application into three main logical components Model, View, and Controller.
Each architecture component is built to handle specific development aspect of an application. MVC separates the business logic and presentation layer from each other.
The model component stores data and its related logic. It represents data that is being transferred between controller components or any other related business logic.
A View is that part of the application that represents the presentation of data.
Views are created by the data collected from the model data.
The view also represents the data from chats, diagrams, and table.
We will learn EJS and later ReactJS
Handles the business logic of the application and sends commands to the model.
User cannot contact the model.
Provides clean separation of concerns
Search Engine Optimization (SEO) Friendly
Allows logical grouping of related actions on a controller together
MVP - Model View Presenter
MVA - Model View Adapter
All are triads with a different approach to a similar concept to separate concerns