Currently, we follow the latest technology which is MVVM to develop the framework of our application. Let’s understand difference between all the three first-
MVC– It has three components Model, View, and Controller.
- Model: Model represents the shape of the data and business logic. It maintains the data of the application. Model objects retrieve and store model state in a database.
- View: View is a user interface. View display data using the model to the user and also enables them to modify the data.
- Controller: Controller handles the user request. Typically, a user interacts with View, which in-turn raises appropriate URL request, this request will be handled by a controller. The controller renders the appropriate view with the model data as a response.
MVP- The Model View Presenter (MVP) architecture pattern improve the application architecture to increase testability. The MVP pattern separates the data model, from a view through a presenter.The presenter triggers the business logic and tells the view when to update. It, therefore, interacts with the model and fetches and transforms data from the model to update the view. The presenter should not have, if possible, a dependency to the Android SDK.