البرمجة

تعريف Enums في Dart وإضافة القيم والطرق

بالطبع، يمكنك في لغة البرمجة Dart تعريف enums بشكل مشابه لما تقوم به في لغة البرمجة Java. لكن هناك بعض الاختلافات في النحو والتركيبة. في Java، يمكنك إضافة قيم أو طرق إلى enum بطريقة تتيح لك تمرير قيم عند إنشاء كل عنصر في enum، كما هو موضح في مثالك.

أما في Dart، ليست هناك طريقة مباشرة لتعيين قيم عند إنشاء عناصر enum، ولكن يمكنك تحقيق نفس الغرض باستخدام مفاتيح const في enum. لنقم بتعديل مثالك لتحقيق ذلك:

dart
enum Blah { one, two; // إضافة القيم static const Map values = { Blah.one: 1, Blah.two: 2, }; // إضافة الطرق int getValue() { return values[this] ?? 0; // يمكنك تعيين قيمة افتراضية هنا } }

في هذا المثال، تم إنشاء enum “Blah” مع عناصر “one” و “two”. بعد ذلك، تم إضافة Map const بإسم “values” لتعيين القيم التي ترتبط بكل عنصر في ال enum. ثم تم إضافة طريقة “getValue” لإرجاع القيمة المرتبطة بكل عنصر enum. يمكنك الآن استخدام هذه القيم والطرق بسهولة كما هو موضح في المثال التالي:

dart
void main() { print(Blah.one); // يطبع: Blah.one print(Blah.one.getValue()); // يطبع: 1 print(Blah.two); // يطبع: Blah.two print(Blah.two.getValue()); // يطبع: 2 }

هكذا، يمكنك في Dart تحقيق نفس الغرض الذي يمكن تحقيقه في Java عن طريق استخدام مفاتيح const والتعامل معها بشكل مناسب داخل enum.

المزيد من المعلومات

بالطبع، هنا بعض المعلومات الإضافية حول تعريف enums وإضافة قيم أو طرق إليها في لغة البرمجة Dart:

  1. استخدام القيم الثابتة (const) في ال enums:
    في Dart، تُعتبر القيم الثابتة (const) أداة قوية لتعريف قيم ثابتة ومستقلة في الوقت التصميم. يمكنك استخدام القيم الثابتة لتعريف القيم المرتبطة بكل عنصر enum بشكل فعال.

  2. استخدام ال Map لربط القيم بالعناصر:
    يمكنك استخدام بنية البيانات Map لربط القيم بالعناصر في enum. هذا يسمح لك بتحقيق التعيين الذي تبحث عنه بطريقة فعالة وسهلة الاستخدام.

  3. إضافة طرق إلى ال enums:
    بالإضافة إلى تعريف القيم، يمكنك أيضًا إضافة طرق (methods) إلى enums في Dart. هذه الطرق يمكنها تنفيذ العمليات المرتبطة بكل عنصر enum بشكل مباشر.

  4. التحقق من القيم الافتراضية:
    عند استخدام Map لربط القيم بالعناصر، يمكنك تضمين آلية للتحقق من وجود القيم الافتراضية لتجنب الأخطاء في حالة عدم توفر قيم معينة.

  5. التوثيق والتعليق:
    يمكنك دائمًا استخدام التعليقات والتوثيق الجيد لشرح العناصر والقيم والطرق المضافة إلى ال enums، وهذا يساعد في فهم الكود لاحقًا وتعديله بسهولة.

مع هذه المعلومات، يمكنك استخدام enums بشكل فعال في لغة Dart وتعزيزها بالقيم والطرق التي تحتاجها في تطبيقاتك بطريقة نظيفة ومنظمة.

زر الذهاب إلى الأعلى