Android applications predominantly use Model View Presenter design pattern.
<li><strong>Model</strong>: This is the domain model of the Android application. It contains the business logic and business rules. </li> <li>
View: These are the UI components in your application. These are part of the view. Also any events on UI components are part of view module.
Presenter: This is the bridge between Model and View to control the communication. Presenter can query the model and return data to view to update it.
E.g. If we have a Model with large news article data, and view needs only headline, then presenter can query the data from model and only give headline to view. In this way view remains very light in this design pattern
.Read the full book at www.amazon.com