# Colaboradores

# Mappers

Los mappers son clases que creamos para transformar modelos de una fuente de datos a modelos de dominio.

Crearemos un fichero kotlin con el nombre según la fuente de datos:

  • Para modelos de remoto, lo llamaremos ModelXRemoteDataMapper*.
  • Para modelos de local, lo llamaremos ModelXLocalDataMapper*.

Usaremos una función de extensión para convertir de un modelo a otro.

Nota: ModelX será el nombre del modelo con el que estemos trabajando.
Ejemplo: SuperHeroeRemoteDataMapper o SuperHeroeLocalDataMapper.

# Ejemplo

Función que transforma un ApiModel a un modelo de dominio

fun SuperHeroeApiModel.toDomain(): SuperHeroe {
    return SuperHeroe(
        this.id, this.name, listOf(
            this.images.xs, this.images.sm, this.images.md, this.images.lg
        )
    )
}
1
2
3
4
5
6
7

# Serialización

En ciertas ocasiones necesitamos serializar y deserializar objetos para trabajar con ellos. Para estos casos, usaremos librerías externas que nos faciliten la transformación.

En este curso veremos dos ejemplos: