Overviews, rating and trailers movies app.
- View: Capa de interacción con el usuario.
- Interactor: Se encarga de responder las peticiones de datos ya sea de la memoria cache en caso de no tener internet el dispositivo o de el API en caso contrario.
- Presenter: Es el encargado de ser intermediario entre las capas de las otras capas de la aplicación y la vista, en está capa se incluyen las reglas de negocio.
- Entity: Son todos lo modelos usados en la aplicación, objects, enums etc.
- Repository: Maneja el almacenamiento local.
Cada parte del código debe realizar solo una tarea en especifico.
- Uso de los principios de SOLID
- Reutilización de código
- Código pensado para el testing
- Metodos y clases que solo realizen una tarea y tengan una razon de ser.
- Código pensado para escalar y refactorizar.
- Uso de interfaces en las declaraciones en vez de implementaciones.
- Utilizar patrones creacionales, de comportamiento o arquitectura. Esto de acuerdo a las necesidades del proyecto.
- Retrofit
- Dagger 2
- Picasso
- Youtube Android Player
- Mockito
- Gson
- Realm