Middle — Middle+
Kokie alternatyvūs klaidų tvarkymo būdai gali būti įgyvendinti, išskyrus išimčių gaudymą naudojant try-catch bloką?
sobes.tech AI
Atsakymas iš AI
Be Android naudojant try-catch klaidų tvarkymo būdu, galima taikyti šiuos požiūrius:
- Sąlygų patikrinimas prieš operacijų vykdymą — pavyzdžiui, patikrinti įvesties duomenis ar tinklo būseną, siekiant išvengti klaidų.
- Naudoti grąžinimo reikšmes su klaidų indikatoriais — pavyzdžiui, grąžinti null arba specialų rezultatų objektą su klaidos informacija.
- Klaidos tvarkymo callback metodai — asinchroninėse operacijose galima perduoti callback'us, skirtus sėkmei ir klaidoms apdoroti.
- Naudoti Result arba Either tipus (Kotlin) — aiškiai atvaizduoti sėkmingus ir klaidingus rezultatus.
- Žurnalo įrašymas ir stebėsena — klaidų sekimui, nesustabdant programos veikimo.
Pavyzdys su Kotlin Result:
fun parseInt(str: String): Result<Int> {
return try {
Result.success(str.toInt())
} catch (e: NumberFormatException) {
Result.failure(e)
}
}
val result = parseInt("123")
result.onSuccess { println("Išanalizuotas skaičius: $it") }
.onFailure { println("Klaida: ${it.message}") }