Ephemeral state və app state
Flutter-in rəsmi sənədləri state-i iki qrupa bölür.
Ephemeral state (UI state, local state) — bir widget-in içində səliqəli şəkildə saxlanıla bilən state-dir. Rəsmi nümunələr: PageView-in cari səhifəsi, animasiyanın gedişatı, BottomNavigationBar-ın seçilmiş tab-ı. Bunun üçün StatefulWidget və setState kifayətdir.
App state (shared state) — tətbiqin bir çox yerində paylaşılan və sessiyalar arasında saxlanılması istənilən state-dir. Rəsmi nümunələr: user seçimləri, login məlumatı, bildirişlər, səbət, xəbərin oxunub-oxunmaması.
| Sual | Ephemeral | App state |
|---|---|---|
| Kim oxuyur? | Bir widget və onun alt ağacı | Bir-birindən uzaq ekranlar |
| Widget söküləndə nə olur? | İtir — və bu, normaldır | Qalmalıdır |
| Tipik alət | `setState`, `ValueNotifier` | Provider / Riverpod / BLoC |
| Test edilməsi | Widget testi ilə | Ayrıca unit test (UI-dan asılı olmadan) |
Rəsmi sənəd açıq yazır ki, universal qayda yoxdur: bəzən ephemeral state-i app state-ə köçürmək lazım gəlir, tətbiq böyüdükcə. Sənəddə istinad edilən praktik prinsip: hansı variant daha az narahatlıq yaradırsa, onu seç. Müsahibədə bu cavab "həmişə BLoC istifadə edirəm"-dən qat-qat güclü səslənir.
📚 Mənbələr və sənədlər
- Ephemeral state vs app staterəsmidocs.flutter.dev
Bu mövzunun bütün tərifləri və nümunələri buradan gəlir.
- State management-ə girişrəsmidocs.flutter.dev
- Sadə app state idarəetməsirəsmidocs.flutter.dev