abril 27, 2024

BitCuco

¡Hola Mundo!

Creación de entidades en Kotlin

En ésta ocasión les mostramos la creación de entidades en Kotlin. Una entidad es un objeto que consiste en un conjunto de atributos y propiedades encapsulados en una variable de tipo objeto. Su función es nítida para la POO (Programación orientada a objetos), en donde Kotlin al igual que Java son lenguajes orientados a objetos.

Dentro de la construcción de un objeto en Kotlin, podemos usar una clase de datos, tal y como se muestra en éste ejemplo:

data class UserInfo(
    val userId: Int,
    val userName: String,
    val userAddress: String,
    val userPhoneNumber: String
)

Para la creación de entidades en Kotlin, definimos éste objeto con algunas propiedades, y este objeto es accesible al importarse detro del archivo, como ejemplo en el ViewModel. Para declarar un objeto del tipo deseado para este ejemplo, hay que declarar una variable de ese tipo, sea de clase o dentro de alguna función y asignar valores al declarar.

val newUser = UserInfo(10, "Francisco", "Washington 23", "1111111111")

Entidades que no requieren valores para declarar

En este caso, el constructor debe contenter valores por defecto, tal y como vemos en el siguiente ejemplo:

data class UserInfo(
    val userId: Int = 0,
    val userName: String = "",
    val userAddress: String = "",
    val userPhoneNumber: String= ""
)

O bien declarar un segundo constructor sin parámetros:

data class UserInfo(
    val userId: Int,
    val userName: String,
    val userAddress: String,
    val userPhoneNumber: String
) {
    constructor() : this(0, "", "", "")
}

Para declarar un objeto con constructor, es suficiente declarar el objeto, aún cuando después se tengan que reasignar los valores deseados al objeto.

val newUser = UserInfo()

Podemos notar que para declarar el tipo del objeto, se hace a nivel constructor y al declarar el objeto, solo se declara una instancia al objeto deseado, sin necesidad de declarar su tipo.

Agregar contenido a las entidades vía remota

A través de Retrofit, puedes agregar contenido al objeto entidad, siempre que éste se encuentre observando la recepción de los datos a través de un Observer.
En éste tutorial mostramos todo el ciclo para configurar Retrofit, así como la obtención de la data desde los endpoints. Ésta es enviada en forma transparente hacia las entidades usando un factory que tiene inyección de dependencias con Dagger.