Sobes.tech
Middle — Middle+

Koji alternativni načini obrade grešaka se mogu implementirati osim hvatanja izuzetaka pomoću bloka try-catch?

sobes.tech АИ

Одговор од АИ

Поред коришћења try-catch за руковање изузецима у Android-у, могу се применити следећи приступи:

  • Проверa услова пре извршавања операција — на пример, провера улазних података или стања мреже како би се избегле грешке.
  • Користите вредности повратка са индикаторима грешака — на пример, враћање null или посебног објекта резултата са информацијама о грешци.
  • Методе callback са обрадом грешака — у асинхроним операцијама, можете преносити callback-ове за обраду успеха и грешака.
  • Користите типове Result или Either (у Kotlin-у) — за јасно представљање успешног и грешног резултата.
  • Логовање и мониторинг — за праћење грешака без прекида рада апликације.

Пример са 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("Парсирани број: $it") }
      .onFailure { println("Грешка: ${it.message}") }