Sobes.tech
Junior — Middle

Layihələrinizdə sealed class istifadə etmisinizmi?

sobes.tech Süni İntellekt

AI-dan cavab

Bəli, Android üçün Kotlin layihələrində mən məhdudiyyətli vəziyyət və ya hadisə hierarxiyalarını modelləşdirmək üçün sealed class istifadə etmişəm. Sealed class, tərtib zamanı məlum olan alt siniflər toplusunu müəyyən etməyə imkan verir və bu, when ilə işləməyi sadələşdirir, else şərtini yazmağa ehtiyac qalmır.

Yükləmə vəziyyətlərini təsvir etmək üçün sealed class nümunəsi:

sealed class LoadState {
    object Loading : LoadState()
    data class Success(val data: List<String>) : LoadState()
    data class Error(val error: Throwable) : LoadState()
}

fun handleState(state: LoadState) {
    when(state) {
        is LoadState.Loading -> println("Yüklənir...")
        is LoadState.Success -> println("Məlumatlar alındı: ${state.data}")
        is LoadState.Error -> println("Xəta: ${state.error.message}")
    }
}

Bu, kodu daha təhlükəsiz və oxunaqlı etməyə kömək edir, xüsusən UI vəziyyətləri və ya əməliyyatların nəticələri ilə işləyərkən.