¡¡¡Cómo simplifica mi trabajo la extensión Kotlin !!! | de Ashiqul Islam Shaon | Noviembre de 2020

Comencé a codificar usando Kotlin hace casi 2 años. Es un viaje largo y amo a Kotlin. Casi olvido lo que se siente al escribir código en Java.

Habíamos escrito código usando java y resolvimos muchos problemas. Pero cómo Extensión de Kotlin facilita aún más nuestro trabajo?

Hablemos de cómo simplifica mi trabajo. He creado un repositorio que contiene algunas extensiones que he usado en mi proyecto. Explicaré algunos de estos.

fun <T> AppCompatActivity.startActivityNormally(to: Class<T>, extras: Bundle.() -> Unit = {}) =
startActivity(Intent(this, to).apply {
putExtras(Bundle().apply(extras))
})

Hablemos de unsegundodonde la función de extensión. Me ayuda a escribir código simple y reduce mi línea de código para lograr mi objetivo.

startActivityNormally(ActivityName::class.java)

Llamarlo iniciará una actividad. Si necesito pasar datos adicionales intencionalmente, puedo hacerlo fácilmente.

startActivityNormally(ActivityName::class.java) {
putSerializable("post", data as Serializable)
putString("id", data.id)
putString("name", data.name)
}

No es hermoso ¡Sí lo es!

Veamos más …

Si necesito validar un número de móvil. Puedo hacer esto fácilmente llamando a la función a continuación.

fun String.isMobileValid(): Boolean {
if (!this.isNullOrEmpty() && this.length == 11) {
val prefix = this.substring(0, 3)
return prefix == "017" || prefix == "016" || prefix == "018" || prefix == "015" || prefix == "019" || prefix == "013" || prefix == "014"
}
return false
}

Aquí se explica cómo llamar a la función de extensión

val mobile = "01521401596"
if (!mobile.isMobileValid()) {
_toast.value = "Mobile is not valid"

return false
}

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *