Forward from: Flutterverse
📢 Dart'da Enum: Nima uchun kerak? 🚀
Dart’da enum (enumeratsiya) — oldindan belgilangan konstantalar to‘plamini yaratish uchun ishlatiladi. U kodni yanada tushunarli va xavfsiz qiladi.
🎯 Enum’ning Asosiy Afzalliklari:
1️⃣ Kod o‘qilishi oson
Oddiy raqamlar yoki stringlar o‘rniga aniq nomlangan qiymatlardan foydalaniladi:
enum Status { loading, success, error }
2️⃣ Xatoliklarni kamaytiradi
Faqat belgilangan qiymatlardan foydalanish mumkin — bu noto‘g‘ri ma’lumot kiritish ehtimolini kamaytiradi.
3️⃣ switch-case bilan ideal ishlaydi
void handleStatus(Status status) {
switch (status) {
case Status.loading:
print('Yuklanmoqda...');
break;
case Status.success:
print('Muvaffaqiyatli!');
break;
case Status.error:
print('Xatolik yuz berdi!');
break;
}
}
4️⃣ Qo‘shimcha xususiyatlar (Dart 2.17+)
Endi enum’ga metodlar va konstruktorlar qo‘shish mumkin:
enum Priority {
low(1), medium(2), high(3);
final int level;
const Priority(this.level);
void describe() => print('Daraja: $level');
}
void main() => Priority.high.describe(); // Daraja: 3
5️⃣ Tip xavfsizligi
Enum noto‘g‘ri qiymatlar bilan ishlash xatoliklarini oldini oladi.
✅ Xulosa:
Enum’lar kodni qisqa, tushunarli va xavfsiz qiladi. Bu sizning ilovangizni yanada professional darajaga olib chiqadi. 🚀
Dart’da enum (enumeratsiya) — oldindan belgilangan konstantalar to‘plamini yaratish uchun ishlatiladi. U kodni yanada tushunarli va xavfsiz qiladi.
🎯 Enum’ning Asosiy Afzalliklari:
1️⃣ Kod o‘qilishi oson
Oddiy raqamlar yoki stringlar o‘rniga aniq nomlangan qiymatlardan foydalaniladi:
enum Status { loading, success, error }
2️⃣ Xatoliklarni kamaytiradi
Faqat belgilangan qiymatlardan foydalanish mumkin — bu noto‘g‘ri ma’lumot kiritish ehtimolini kamaytiradi.
3️⃣ switch-case bilan ideal ishlaydi
void handleStatus(Status status) {
switch (status) {
case Status.loading:
print('Yuklanmoqda...');
break;
case Status.success:
print('Muvaffaqiyatli!');
break;
case Status.error:
print('Xatolik yuz berdi!');
break;
}
}
4️⃣ Qo‘shimcha xususiyatlar (Dart 2.17+)
Endi enum’ga metodlar va konstruktorlar qo‘shish mumkin:
enum Priority {
low(1), medium(2), high(3);
final int level;
const Priority(this.level);
void describe() => print('Daraja: $level');
}
void main() => Priority.high.describe(); // Daraja: 3
5️⃣ Tip xavfsizligi
Enum noto‘g‘ri qiymatlar bilan ishlash xatoliklarini oldini oladi.
✅ Xulosa:
Enum’lar kodni qisqa, tushunarli va xavfsiz qiladi. Bu sizning ilovangizni yanada professional darajaga olib chiqadi. 🚀