/CleanArchitecture

Clean MVP architecture with RxJava for Android.

Primary LanguageJava

CleanArchitecture

Summary

This is a sample android app based on MVP Clean Architecture.

The UI is not completed yet, just backend code(retrieve users) from server for studying now...

MVP-Architecture

MVP-Architecture

Clean-Architecture

Clean-Architecture

Android-Architecture

Android-Architecture

Reactive Stream

Reactive-Stream

Project Structure

  • data: Data Repository, Request Service for Rest API, Request Client

  • domain: Use Case

  • presentation: Presenters, Views, Thread Executor, Domain and Data Mapper

Using Libraries

RxJava + Dagger2 + Retrofit2 + OkHttp3 + ButterKnife

Testing

  • data layer: Android instrumentation / espresso

  • domain layer: JUnit + mockito

  • presentation layer: Robolectric + junit + mockito

License

MIT License