This project: - MVP. - Mokito. - JSONObject. - ORM. - ViewHolder.
I chose MVP(Model, View, Presenter),MVP pattern allows separate the presentation layer from the logic, so that everything about how the interface works is separated from how we represent it on screen. JUnit and Mokito, It lets you write beautiful tests with clean & simple API. The tests are very readable and they produce clean verification errors. JSON, I chose JSONObject, a modifiable set of name/value mappings. Names are unique, non-null strings. Values may be any mix of JSONObjects, JSONArrays, Strings, Booleans, Integers, Longs, Doubles or Null.
Data base I chose a ORM library:
https://github.com/kvirair/SQLite-Simple-Android
I have experience with this library because it's very quickly.
LisView Adapter I chose a ViewHolder implementation allows to avoid the findViewById() method in an adapter.A ViewHolder class is typically a static inner class in your adapter which holds references to the relevant views. in your layout. This reference is assigned to the row view as a tag via the setTag() method.
- Android Studio
- Gradle
- Install Android Studio:
https://developer.android.com/sdk/installing/index.html
- Install gradle:
http://gradle.org/docs/current/userguide/installation.html
Compile with Android Studio and gradle
Feel free to contribute, and contact me for any issues.