https://github.com/roroche/androidvip
Android project to experiment the VIPER approach using mosby, RxJava and dagger2
https://github.com/roroche/androidvip
android dagger dagger-2 dagger-android dagger2 dagger2-mvp daggermock mockito mosby rxandroid rxjava rxjava-android rxjava2 viper viper-architecture
Last synced: about 2 months ago
JSON representation
Android project to experiment the VIPER approach using mosby, RxJava and dagger2
- Host: GitHub
- URL: https://github.com/roroche/androidvip
- Owner: RoRoche
- License: apache-2.0
- Created: 2017-04-24T20:06:33.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2020-04-26T16:50:00.000Z (about 5 years ago)
- Last Synced: 2024-01-14T07:50:47.427Z (over 1 year ago)
- Topics: android, dagger, dagger-2, dagger-android, dagger2, dagger2-mvp, daggermock, mockito, mosby, rxandroid, rxjava, rxjava-android, rxjava2, viper, viper-architecture
- Language: Java
- Homepage:
- Size: 141 KB
- Stars: 21
- Watchers: 2
- Forks: 6
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# AndroidVIP
Android project to experiment the [VIPER approach](https://www.objc.io/issues/13-architecture/viper/).
[](https://android-arsenal.com/details/3/5656)
[](https://www.versioneye.com/user/projects/58fe705d6ac171431cf950fc)
- [Motivations](#motivations)
- [Technical base](#technical-base)
- [Perspectives](#perspectives)
- [Logo credits](#logo-credits)## Motivations
- Tend toward the [VIPER approach](https://www.objc.io/issues/13-architecture/viper/)
- Make it easier to test the application
- Simplify the set up of asynchronous job with [RxJava](https://github.com/ReactiveX/RxJava)## Technical base
- [mosby](https://github.com/sockeqwe/mosby) to set up the "V" and "P" of the [VIPER approach](https://www.objc.io/issues/13-architecture/viper/)
- [dagger2](https://google.github.io/dagger/) to set up the dependency injection system
- [Rx.Observe](https://github.com/florent37/Rx.Observe) to ease the set up of asynchronous job, transforming Interactor's methods to Rx methods
- [DaggerMock](https://github.com/fabioCollini/DaggerMock) to mock dagger2 objects
- [mockito](http://site.mockito.org/) as a mocking framework## Perspectives
- use of [bluelinelabs' Conductor library](https://github.com/bluelinelabs/Conductor) to build View-based application:
- to manage the "V" of the [VIPER approach](https://www.objc.io/issues/13-architecture/viper/)
- to provide the "R" of the [VIPER approach](https://www.objc.io/issues/13-architecture/viper/) (via the `Router` class)
- set up the "E" of the [VIPER approach](https://www.objc.io/issues/13-architecture/viper/)
- use of a [ContentProvider](https://developer.android.com/reference/android/content/ContentProvider.html)
- a combination of [ProviGen](https://github.com/TimotheeJeannin/ProviGen) and [AutoCursor](https://github.com/yongjhih/AutoCursor) could be relevant
- use of an [ORM](https://android-arsenal.com/tag/69)
- [requery](https://github.com/requery/requery), [DBFlow](https://github.com/Raizlabs/DBFlow) or [OrmLite](https://github.com/j256/ormlite-android) for example
- use of [EasyFlow](https://github.com/Beh01der/EasyFlow) to manage screen's states (cf. [AndroidModularSample](https://roroche.github.io/AndroidModularSample/))## Bibliography
-
-
-## Logo credits
Animals graphic by Freepik from Flaticon is licensed under CC BY 3.0. Made with Logo Maker