ModelViewPresenter --------------------------- - View is a layer that displays data and reacts to user actions. On Android, this could be an Activity, a Fragment, an android.view.View or a Dialog. - Model is a data access layer such as database API or remote server API. - Presenter is a layer that provides View with data from Model. Presenter also handles background tasks.
Most of the modern Android applications just use View-Model architecture. Programmers are involved into fight with View complexities instead of solving business tasks. Using only Model-View in your application you usually end up with "everything is connected with everything", which translates into harder scalability. With the MVP approach it easier to understand the role of each element, KISS principle!
Abstracting the business logic (data and network) layer from the UI enables a painless multi-platform flavour orient development process.