Dartda class modifikatorlari.
Modifikatorlar class yoki mixin va uning maydonlaridan qanday foydalanishni boshqarish uchun ishlatiladi. Dartda 6ta modifikatorlar mavjud :
Abstract.
To'g'ridan-to'g'ri class-dan namuna (instance) olish imkoni yo'q, voris olgan bola class (subclass)-larda abstrakt metodlarni qayta yozishga undaydi.
Interface.
Dartda har qanday class interfeys vazifasini bajarishi mumkin. Biroq, "interface" modifikatorining kiritilishi bilan dasturchilar faqat interfeys sifatida foydalanish uchun mo'ljallangan class-ni aniq belgilashlari mumkin. Bu shuni anglatadiki, boshqa class-lar uni implement qilishi mumkin, lekin ular undan voris (inherit) ololmaydilar.
Base.
Bu modifikator class-ni kengaytirish (extend)-ga imkon beradi, lekin uni implement qilib bo'lmaydi. Bu, ayniqsa, boshqa class-lar uchun asos bo'lib xizmat qilishi kerak bo'lgan class-ni aniqlash uchun foydali bo'lib, uni interfeys sifatida ishlatilishiga yo'l qo'ymaydi.
Final.
Tur ierarxiyasi yani, extend va implement-ni yopish uchun ishlatiladi. Bu joriy kutubxonadan tashqaridagi class voris olishidan saqlaydi.
Sealed.
Bu modifikator class-ni o'z kutubxonasidan tashqarida extend yoki implement qilish imkonini cheklaydi. Sealed class-lar ichki holatda abstract, ya'ni ulardan to'g'ridan-to'g'ri namuna olish mumkin emas. Biroq, ular factory konstruktorlariga ega bo'lishi va konstant konstruktorlarni belgilashi mumkin.
Manbalar :
1. Official doc : Link
2. Medium : Link
3. Youtube : Link
#Flutter
Modifikatorlar class yoki mixin va uning maydonlaridan qanday foydalanishni boshqarish uchun ishlatiladi. Dartda 6ta modifikatorlar mavjud :
Abstract.
To'g'ridan-to'g'ri class-dan namuna (instance) olish imkoni yo'q, voris olgan bola class (subclass)-larda abstrakt metodlarni qayta yozishga undaydi.
Interface.
Dartda har qanday class interfeys vazifasini bajarishi mumkin. Biroq, "interface" modifikatorining kiritilishi bilan dasturchilar faqat interfeys sifatida foydalanish uchun mo'ljallangan class-ni aniq belgilashlari mumkin. Bu shuni anglatadiki, boshqa class-lar uni implement qilishi mumkin, lekin ular undan voris (inherit) ololmaydilar.
Base.
Bu modifikator class-ni kengaytirish (extend)-ga imkon beradi, lekin uni implement qilib bo'lmaydi. Bu, ayniqsa, boshqa class-lar uchun asos bo'lib xizmat qilishi kerak bo'lgan class-ni aniqlash uchun foydali bo'lib, uni interfeys sifatida ishlatilishiga yo'l qo'ymaydi.
Final.
Tur ierarxiyasi yani, extend va implement-ni yopish uchun ishlatiladi. Bu joriy kutubxonadan tashqaridagi class voris olishidan saqlaydi.
Sealed.
Bu modifikator class-ni o'z kutubxonasidan tashqarida extend yoki implement qilish imkonini cheklaydi. Sealed class-lar ichki holatda abstract, ya'ni ulardan to'g'ridan-to'g'ri namuna olish mumkin emas. Biroq, ular factory konstruktorlariga ega bo'lishi va konstant konstruktorlarni belgilashi mumkin.
Manbalar :
1. Official doc : Link
2. Medium : Link
3. Youtube : Link
#Flutter
👍2
Flutterda await, unawaited va ignore Future-lar haqida.
await.
Future natijasi kerak bo'lganda va xatolarni handle qilmoqchi bo'lganingizda foydalaning.
unawaited.
Future-ning tugashini ataylab kutishni istamaydigan, lekin baribir uning mavjudligini tan olishni istaydigan Yondir va unut” (fire-and-forget) stsenariylari uchun foydalaning.
ignore.
Future-ni va u yuzaga kelishi mumkin bo'lgan xatolarni butunlay e'tiborsiz qoldirmoqchi bo'lganingizda foydalaning, bu uni muhim bo'lmagan operatsiyalar uchun xavfsizroq variantga aylantiradi.
Manbalar :
1. await - Link
2. unawaited - Link
3. ignore - Link
4. Post : Link
#Flutter
await.
Future natijasi kerak bo'lganda va xatolarni handle qilmoqchi bo'lganingizda foydalaning.
unawaited.
Future-ning tugashini ataylab kutishni istamaydigan, lekin baribir uning mavjudligini tan olishni istaydigan Yondir va unut” (fire-and-forget) stsenariylari uchun foydalaning.
ignore.
Future-ni va u yuzaga kelishi mumkin bo'lgan xatolarni butunlay e'tiborsiz qoldirmoqchi bo'lganingizda foydalaning, bu uni muhim bo'lmagan operatsiyalar uchun xavfsizroq variantga aylantiradi.
Manbalar :
1. await - Link
2. unawaited - Link
3. ignore - Link
4. Post : Link
#Flutter
👍1