By using this site, you agree to the Privacy Policy and Terms of Use.
موافق
عرب فلاترعرب فلاتر
  • Dart
  • Widgets
  • Packages
  • Tutorials
  • Flutter Roadmap
  • تثبيت Dart
  • تثبيت Flutter
قراءة: الدرس 44: شرح مفهوم الـ Enum في لغة دارت (Enum in Dart)
شارك
تسجيل الدخول
إشعار أظهر المزيد
Aa
عرب فلاترعرب فلاتر
Aa
  • Dart
  • Widgets
  • Packages
  • Tutorials
  • Flutter Roadmap
  • تثبيت Dart
  • تثبيت Flutter
Search

أقسام الموقع

استكشف جميع أقسام الموقع
قسم Dart في موقع عرب فلاتر

Dart

59 مقالات
قسم Widgets في موقع عرب فلاتر

Widgets

104 مقالات
قسم Packages في موقع عرب فلاتر

Packages

19 مقالات
قسم Tutorials في موقع عرب فلاتر

Tutorials

22 مقالات

أخر المواضيع

استكشف أخر المواضيع المنشورة
شرح الـ Event Loop في Flutter وجعل التطبيق لا يتوقف أبدًا
Tutorials

شرح الـ Event Loop في Flutter وجعل التطبيق لا يتوقف أبدًا

5
حل مشكلة التوافق بين Java و Kotlin و Gradle في فلاتر
Tutorials

حل مشكلة التوافق بين Java و Kotlin و Gradle في فلاتر

10
أفضل الـ Packages في Flutter لتسريع تطوير التطبيقات
Tutorials

أفضل الـ Packages في Flutter لتسريع تطوير التطبيقات

18
لديك حساب موجود؟ تسجيل الدخول
  • Dart
  • Widgets
  • Packages
  • Tutorials
  • Flutter Roadmap
  • تثبيت Dart
  • تثبيت Flutter
© جميع الحقوق محفوظة موقع عرب فلاتر 2023
عرب فلاتر > Dart > الدرس 44: شرح مفهوم الـ Enum في لغة دارت (Enum in Dart)
Dart

الدرس 44: شرح مفهوم الـ Enum في لغة دارت (Enum in Dart)

عبدالله يوسف
أخر تحديث 2024/11/15
بواسطة عبدالله يوسف اضف تعليق 6 دقيقة للقراءة 2268 مشاهدات 4
شارك
شرح مفهوم الـ Enum في لغة دارت (Enum in Dart)
شرح مفهوم الـ Enum في لغة دارت (Enum in Dart)
شارك

خدماتنا البرمجية – عرب فلاتر🚀

خدماتنا البرمجية – عرب فلاتر

في عالم لغة برمجة دارت (Dart)، تأتي الـ Enum كأداة قوية تسهم في تعريف مجموعة محددة وثابتة من القيم. بفضل هذا النوع الخاص، يمكن للمطورين تمثيل مفاهيم ثابتة مثل أيام الأسبوع أو حالات معينة بطريقة تجعل الأكواد أكثر قراءة وصيانة. في هذا المقال، سنقوم باستكشاف مفهوم الـ Enum في دارت وكيفية استخدامه لتحقيق تبسيط وتنظيم أكثر في الأكواد.

المحتويات
مفهوم الـ Enum في Dart:طريقة كتابة الـ Enum في دارتأمثلة على الـ Enum في دارت:مثال 1: الـ Enum في Dartمثال 2: الـ Enum في Dartطباعة جميع قيم الـ Enum في دارتمزايا الـ Enum في Dartخصائص الـ Enumالـ Enum المحسن في Dart

مفهوم الـ Enum في Dart:

في لغة برمجة دارت (Dart)، الـ Enum هو نوع من البيانات المستخدم لتعريف مجموعة من القيم الثابتة المسماة. يتيح لك الـ Enum تعريف مجموعة محددة من القيم التي لا يمكن تغييرها أو تعديلها أثناء تنفيذ البرنامج. يتم تحديد الـ Enum باستخدام الكلمة المفتاحية “enum” في دارت.

يمكنك استخدام الـ Enum لتعريف مجموعة من القيم الثابتة واستخدامها في برمجتك لتجنب الأخطاء الإملائية وتحسين قابلية صيانة الأكواد.


طريقة كتابة الـ Enum في دارت

يتم بناء الـ Enum في Dart بالشكل التالي:

enum enumName {
  constantName1,
  constantName2,
  constantName3,
  ...
  constantNameN
}

أمثلة على الـ Enum في دارت:

مثال 1: الـ Enum في Dart

في هذا المثال، سنقوم بإنشاء الـ Enum “Days” الذي يحتوي على سبعة أيام. وسنستخدم الـ Enum في دالة main().

enum Days {
  sunday,
  monday,
  tuesday,
  wednesday,
  thursday,
  friday,
  saturday
}

void main() {
  var today = Days.friday;
  switch (today) {
    case Days.sunday:
      print("اليوم هو الأحد.");
      break;
    case Days.monday:
      print("اليوم هو الاثنين.");
      break;
    case Days.tuesday:
      print("اليوم هو الثلاثاء.");
      break;
    case Days.wednesday:
      print("اليوم هو الأربعاء.");
      break;
    case Days.thursday:
      print("اليوم هو الخميس.");
      break;
    case Days.friday:
      print("اليوم هو الجمعة.");
      break;
    case Days.saturday:
      print("اليوم هو السبت.");
      break;
  }
}

نتيجة الكود:

اليوم هو الجمعة.

في هذا المثال، قمنا بإنشاء الـ Enum “days” الذي يحتوي على أيام الأسبوع. ثم قمنا باستخدام الـ Enum في دالة main() حيث تم تعيين قيمة today كـ days.Friday. تم استخدام switch case لطباعة اليوم الحالي بناءً على القيمة المعينة في today.

مثال 2: الـ Enum في Dart

في هذا المثال، سنقوم بإنشاء الـ Enum “Gender” الذي يحتوي على ثلاث قيم: Male، Female، و Other. وسنستخدم الـ Enum في كلاس “Person”.

enum Gender { male, female, other }

class Person {
  // الخصائص
  String? firstName;
  String? lastName;
  Gender? gender;

  // الـ Constructor
  Person(this.firstName, this.lastName, this.gender);

  // دالة العرض
  void display() {
    print("الاسم الأول: $firstName");
    print("الاسم الأخير: $lastName");
    print("الجنس: $gender");
  }
}

void main() {
  Person p1 = Person("جون", "دو", Gender.male);
  p1.display();

  Person p2 = Person("ساره", "شارما", Gender.female);
  p2.display();
}

نتيجة الكود:

الاسم الأول: جون
الاسم الأخير: دو
الجنس: Gender.Male
الاسم الأول: ساره
الاسم الأخير: شارما
الجنس: Gender.Female

في هذا المثال، قمنا بإنشاء الـ Enum “Gender” الذي يحتوي على ثلاث قيم: Male، Female، و Other. ثم قمنا بإنشاء كلاس “Person” يحتوي على خصائص firstName وlastName وgender. تم استخدام الـ Enum “Gender” كنوع لخاصية gender في كلاس “Person”. ثم قمنا بإنشاء كائنين من الكلاس “Person” وعرض بياناتهما باستخدام دالة display().


طباعة جميع قيم الـ Enum في دارت

يمكننا طباعة جميع قيم الـ Enum باستخدام حلقة for كما في المثال التالي:

enum Days { sunday, monday, tuesday, wednesday, thursday, friday, saturday }

void main() {
  for (Days day in Days.values) {
    print(day);
  }
}

نتيجة الكود:

Days.sunday
Days.monday
Days.tuesday
Days.wednesday
Days.thursday
Days.friday
Days.saturday

في هذا المثال، قمنا بإنشاء الـ Enum “Days” الذي يحتوي على أيام الأسبوع. ثم استخدمنا حلقة for للتكرار على جميع القيم الموجودة في الـ Enum وطباعتها.


مزايا الـ Enum في Dart

  • يستخدم لتعريف مجموعة من الثوابت المسماة.
  • يجعل الكود أكثر قراءةً وصيانةً.
  • يجعل الكود أكثر قابلية لإعادة الاستخدام ويسهل على المطورين استخدامه.

خصائص الـ Enum

  • يجب أن يحتوي على قيمة ثابتة واحدة على الأقل.
  • يتم تعريف الـ Enum خارج الكلاس.
  • يستخدم لتخزين عدد كبير من القيم الثابتة.

الـ Enum المحسن في Dart

في Dart، يمكنك تعريف الـ Enum مع أعضاء. على سبيل المثال، يمكنك استخدام الـ Enum في برنامج المحاسبة الخاص بك لتخزين أنواع الشركات مثل الشركة الفردية، شراكة، شركة مساهمة، وشركة ذات مسؤولية محدودة. يمكنك تعريف الـ Enum بأعضاء كما هو موضح في المثال التالي:

enum CompanyType {
  soleProprietorship("الشركة الفردية"),
  partnership("الشراكة"),
  corporation("شركة مساهمة"),
  limitedLiabilityCompany("شركة ذات مسؤولية محدودة");

  // الأعضاء
  final String text;
  const CompanyType(this.text);
}

void main() {
  CompanyType soleProprietorship = CompanyType.soleProprietorship;
  print(soleProprietorship.text);
}

نتيجة الكود:

الشركة الفردية

في هذا المثال، قمنا بتعريف الـ Enum “CompanyType” مع الأعضاء. تم تعريف الأعضاء باستخدام القيم المرتبطة بها والتي تم تمريرها في الـ Constructor. ثم تم إنشاء كائن “soleProprietorship” من الكلاس “CompanyType” وتم طباعة القيمة المرتبطة بها باستخدام الخاصية text.


تعد الـ Enum في لغة دارت أداةً مهمةً تمنح المطورين إمكانية تمثيل القيم الثابتة بشكل واضح ومنظم. من خلال تعريفها باستخدام الكلمة المحجوزة “enum”، يمكنك تجنب الأخطاء الإملائية وتحسين فهم الأكواد للفريق وزيادة قابلية صيانتها. استفد من هذه الأداة لجعل برمجتك في دارت أكثر فعالية وسهولة.

Arab Flutter Community 🚀

انضم إلى مجتمع Arab Flutter
شارك هذا المقال
فيسبوك تويتر Whatsapp Whatsapp لينكد ان تلغرام نسخ الرابط
المقال السابق شرح مفهوم الـ Static في لغة دارت (Static in Dart) الدرس 43: شرح مفهوم الـ Static في لغة دارت (Static in Dart)
المقال التالي شرح الـ Abstract Class في لغة دارت (Abstract Class in Dart) الدرس 45: شرح الـ Abstract Class في لغة دارت (Abstract Class in Dart)
Avatar of عبدالله يوسف
بواسطة عبدالله يوسف Founder and CEO at ArabFlutter
تابع:
أنا عبدالله يوسف، مهندس مصري ومؤسس موقع عرب فلاتر، ملهم بشغف التكنولوجيا والإبداع. كمصمم مواقع ومبرمج تطبيقات موبايل باستخدام Flutter، أستمتع بخلق عوالم رقمية فريدة ومبتكرة. تتجلى مواهبي في تصميم وتطوير واجهات مستخدم تفاعلية، حيث يمزج الجانب الجمالي بالدقة الهندسية. ما يميزني هو إلمامي الواسع بتقنيات البرمجة والتصميم، ومقدرتي على تطوير تطبيقات متنوعة عبر منصات مختلفة. أعتبر نفسي مبدعًا وملتزمًا، حيث أسعى دائمًا لتحقيق تحسين مستمر في مهاراتي وتقنياتي. أستمتع بتحديات العمل الجماعي وأؤمن بأهمية الابتكار والتطور. بفضل إبداعي والتزامي، أسعى لتقديم حلول فعّالة تلبي توقعات العملاء وتفوق عن المألوف.
اترك تعليقا اترك تعليقا

اترك تعليقاً إلغاء الرد

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

شرح الـ Event Loop في Flutter وجعل التطبيق لا يتوقف أبدًا
شرح الـ Event Loop في Flutter وجعل التطبيق لا يتوقف أبدًا
Tutorials
حل مشكلة التوافق بين Java و Kotlin و Gradle في فلاتر
حل مشكلة التوافق بين Java و Kotlin و Gradle في فلاتر
Tutorials
أفضل الـ Packages في Flutter لتسريع تطوير التطبيقات
أفضل الـ Packages في Flutter لتسريع تطوير التطبيقات
Tutorials
طريقة انشاء المجلدات باستخدام Dart
طريقة انشاء المجلدات باستخدام كود Dart تلقائيًا
Tutorials

مقالات ذات الصلة

اطلع على المزيد من المقالات المتعلقة بهذا الموضوع!
شرح العوازل في لغة دارت (Isolates in Dart)
Dart

شرح العوازل في لغة دارت (Isolates in Dart)

8
شرح الـ Stream في لغة دارت (Stream in Dart)
Dart

الدرس 57: شرح الـ Stream في لغة دارت (Stream in Dart)

8
شرح عبارات async & await في لغة دارت (Dart)
Dart

الدرس 56: شرح عبارات async & await في لغة دارت (Dart)

6
شرح مفهوم الـ Future في لغة دارت (Future In Dart)
Dart

الدرس 55: شرح مفهوم الـ Future في لغة دارت (Future In Dart)

6
شرح مفهوم الـ Asynchronous في لغة دارت (Dart)
Dart

الدرس 54: شرح مفهوم الـ Asynchronous في لغة دارت (Dart)

5
10 تمارين محلولة على Null Safety في لغة دارت Dart
Dart

الدرس 53: 10 تمارين محلولة على Null Safety في لغة دارت Dart

5
أظهر المزيد
شعار موقع عرب فلاتر شعار موقع عرب فلاتر

About US

Quick Links

  • خدماتنا
  • من نحن
  • اتصل بنا
  • اتفاقية استخدام
  • سياسة الخصوصية
© جميع الحقوق محفوظة موقع عرب فلاتر 2023
  • Dart
  • Widgets
  • Packages
  • Tutorials
  • Flutter Roadmap
  • تثبيت Dart
  • تثبيت Flutter
adbanner
تم اكتشاف مانع إعلانات
مرحبًا، يرجى إيقاف مانع الإعلانات. الإعلانات تُساهم في دعم موقعنا وتغطية جزء من تكاليف الاستضافة وتطوير المحتوى. شكرًا لتفهمك ودعمك.
Okay, I'll Whitelist
Welcome Back!

Sign in to your account

هل نسيت كلمة المرور؟