An open API service indexing awesome lists of open source software.

https://github.com/whosnickdoglio/nycschools

Small demo android application for an Android Developer interview
https://github.com/whosnickdoglio/nycschools

android-application butterknife dagger2 mvp-android retrofit2 rxjava2

Last synced: 3 months ago
JSON representation

Small demo android application for an Android Developer interview

Awesome Lists containing this project

README

          

# NYC Schools

Small android application written as a coding challenge for an interview for an Android Developer position.
The master branch contains the work finished in the given amount of time (48 Hours).

## Presentation Pattern

This project follows the Model-View-Presenter (MVP) presentation pattern. This breaks down to:

- Model: A data management layer that handles any business logic

- View: Responsible for displaying data from the Presenter and notifying the Presenter of any user input

- Presenter: A mediator layer between the model and the view that connects the two, it contains all the presentation logic,
like updating the model and reacting to input from the view

Each screen has a `Contract` that outlines interfaces for the relationship between the `View` and `Presenter`, each corresponding
`View` or `Presenter` implements their interface and uses it to communicate between each other.

## Libraries
- [Butterknife](https://jakewharton.github.io/butterknife/) for resource binding
- [Dagger](https://google.github.io/dagger/) for dependency injection
- [RxJava](https://github.com/ReactiveX/RxJava) and [RxAndroid](https://github.com/ReactiveX/RxAndroid) for
asynchronous network calls and threading
- [Retrofit](https://square.github.io/retrofit/) for network calls
- [Mockito](https://site.mockito.org/) for testing