Sobes.tech
Middle — Middle+

Milyen alternatív hibakezelési módszerek valósíthatók meg a try-catch blokk által elfogott kivételeken kívül?

sobes.tech MI

Válasz az MI-től

Az Androidban az kivételek kezelése mellett a következő megközelítéseket lehet alkalmazni:

  • Feltételek ellenőrzése műveletek végrehajtása előtt — például bemeneti adatok vagy hálózati állapot ellenőrzése a hibák elkerülése érdekében.
  • Hibaindikátorokat tartalmazó visszatérési értékek használata — például null vagy egy speciális eredményobjektum visszaadása a hiba információival.
  • Hibakezelő callback metódusok — aszinkron műveleteknél callback-ek átadása a siker és a hiba kezelésére.
  • Result vagy Either típusok használata (Kotlinben) — a sikeres és hibás eredmények explicit megjelenítéséhez.
  • Naplózás és monitorozás — a hibák nyomon követése anélkül, hogy megszakítaná az alkalmazás működését.

Példa Kotlin Result használatával:

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("Elemzett szám: $it") }
      .onFailure { println("Hiba: ${it.message}") }