/TheMovieApp

Android Application using API The Movie DB with Architecture Components

Primary LanguageKotlin

Arquitectura de la aplicacion

Este proyecto esta basado en la Arquitectura MVVM y Repository Pattern. Se ha utilizado los siguintes componentes y librerias

Capas de la aplicacion

1 - Capa de Persistencia

2 - Capa de Red

3 - Capa de Negocio

  • La capa de negocio es implementado utilizando Repository Pattern.
  • Repositories: Es la fuente de datos, encargado de obtener de la cache local o del servidor.
  • ViewModels: Mediante la utilizacion de LiveData se informa a la UI que se obtuvo un resultado.

4 - Capa de UI

  • Las vistas son manejadas por las activities y los fragments

Preguntas

1. En qué consiste el principio de responsabilidad única? Cuál es su propósito?

Consiste en que una clase debe tener solamente una resposabilidad concreta. El proposito es identificar y crear abstracciones en pequeños componentes de software reutilizables.

2. Qué características tiene, según su opinión, un “buen” código o código limpio?

  • Debe tener una arquitectura definida (MVP, MVVM, CLEAN, etc).
  • En lo posible se debe aplicar en la creación de las clases el principio SOLID.
  • Implementar design paterns en las distintas capas de la arquitectura (DAO, Singleton, Factory, etc)

Escribir "buen" codigo implica tener buenos nombres de variables, clases y métodos. Debe reflejar cual es su cometido, su proposito. A parte de aplicar los Design Patterns, buenos principios de Ingenieria de Software, etc.