Why this MVP Library ? - mandriana/android-mvp-core GitHub Wiki

Many articles explain the purpose of the MVP architecture, its advantages ... and explain how you can implement it, with samples on github repositories. I will let you find out these articles.

This library was made to make it easy to use the MVP architecture with some features in mind :

  • being "independent" from the lifecycle (not having to deal with lifecycle manually each time I use a presenter)
  • use of RxJava
  • being able to start a Rx stream without having to manually dispose or restart it in cases like orientation change, application paused then resumed
  • avoiding the null check when accessing the view such as :
if(getView() != null){
   getView().showResult(result);
}
  • being able to cancel a started task