تُعد معاملات الدوال Parameter أحد الجوانب الأساسية في لغة برمجة دارت (Dart)، حيث تمكننا من تمرير القيم إلى الدوال. يجب أن تتوافق القيم الممررة إلى الدالة مع عدد المعاملات المحددة. يمكن للدالة أن تحتوي على أي عدد من المعاملات Parameter، وتعتبر هذه المعاملات واحدة من أهم الطرق لتمرير البيانات وإتاحة التعامل معها داخل الدوال.
Positional Parameters في دارت:
في الـ Positional Parameters، يجب عليك تمرير البيانات بنفس الترتيب الذي تم تعريفه في المعاملات Parameters عند كتابة الدالة. إذا قمت بالاتصال بالدالة بترتيب غير صحيح، فستحصل على نتيجة غير صحيحة.
مثال الكود:
void printInfo(String name, String gender) { print("مرحبًا $name، جنسك هو $gender."); } void main() { printInfo("محمد", "ذكر"); printInfo("أميرة", "أنثى"); }
نتيجة الكود:
مرحبًا محمد، جنسك هو ذكر. مرحبًا أميرة، جنسك هو أنثى.
توفير قيمة افتراضية لـ Positional Parameters:
يمكنك تعيين قيمة افتراضية لـ Positional Parameters في دارت. في حالة عدم تمرير قيمة للمعامل Parameter، ستتم تعيين القيمة الافتراضية تلقائيًا.
مثال الكود:
void printInfo(String name, String gender, [String title = "سيدي/سيدتي"]) { print("مرحبًا $title $name، جنسك هو $gender."); } void main() { printInfo("أمجد", "ذكر"); printInfo("أحمد", "ذكر", "السيد"); printInfo("نورة", "أنثى", "الآنسة"); }
نتيجة الكود:
مرحبًا سيدي/سيدتي أمجد، جنسك هو ذكر. مرحبًا السيد أحمد، جنسك هو ذكر. مرحبًا الآنسة نورة، جنسك هو أنثى.
Named Parameters في دارت:
تسمح لنا لغة دارت باستخدام المعاملات المسماة Named Parameters لتوضيح معنى المعاملات عند استدعاء الدوال، حيث يتم استخدام الأقواس المجعدة {} لتحديد المعاملات المسماة.
مثال الكود:
void printInfo({String? name, String? gender}) { print("مرحبًا $name، جنسك هو $gender."); } void main() { printInfo(gender: "ذكر", name: "أحمد"); printInfo(name: "سارة", gender: "أنثى"); }
نتيجة الكود:
مرحبًا أحمد، جنسك هو ذكر. مرحبًا سارة، جنسك هو أنثى.
استخدام required في Named Parameters في دارت:
يمكنك استخدام كلمة (required) للإشارة إلى أنه يجب تمرير قيمة للمعاملات المسماة Named Parameters. إذا لم تمرر القيمة، فلن يتم تنفيذ الكود.
مثال الكود:
void printInfo({required String name, required String gender}) { print("مرحبًا $name، جنسك هو $gender."); } void main() { printInfo(gender: "ذكر", name: "أحمد"); printInfo(gender: "أنثى", name: "سارة"); }
نتيجة الكود:
مرحبًا أحمد، جنسك هو ذكر. مرحبًا سارة، جنسك هو أنثى.
أمثلة إضافية لاستخدام المعاملات في دارت:
هنا بعض الأمثلة الإضافية لتوضيح استخدام المعاملات في دارت:
مثال على المعاملات الوضعية Positional Parameters:
void calculateSum(int num1, int num2) { int sum = num1 + num2; print("مجموع الأعداد هو: $sum"); } void main() { calculateSum(10, 20); }
نتيجة الكود:
مجموع الأعداد هو: 30
مثال على المعاملات المسماة Named Parameters:
void printPersonInfo({String? name, int? age, String? city}) { print("اسم الشخص: $name"); print("عمر الشخص: $age"); print("مدينة الشخص: $city"); } void main() { printPersonInfo(name: "أحمد", age: 25, city: "القاهرة"); }
نتيجة الكود:
اسم الشخص: أحمد عمر الشخص: 25 مدينة الشخص: القاهرة
مثال على توفير قيمة افتراضية لـ Named Parameters:
void sendMessage({String message = "مرحبًا", String recipient = "العالم"}) { print("$message $recipient"); } void main() { sendMessage(); // ستقوم بطباعة "مرحبًا العالم" sendMessage(message: "مرحبًا"); // ستقوم بطباعة "مرحبًا العالم" sendMessage(recipient: "أصدقائي"); // ستقوم بطباعة "مرحبًا أصدقائي" }
نتيجة تشغيل الكود:
مرحبًا العالم مرحبًا العالم مرحبًا أصدقائي
مثال على استخدام كلمة required في Named Parameters:
void displayProductInfo({required String name, required double price}) { print("اسم المنتج: $name"); print("سعر المنتج: $price ريال"); } void main() { displayProductInfo(name: "قميص", price: 50.0); }
نتيجة تشغيل الكود:
اسم المنتج: قميص سعر المنتج: 50.0 ريال
هذه بعض الأمثلة لاستخدام المعاملات في لغة برمجة دارت. يمكنك استكشاف المزيد من الأمثلة وتحديد الأنماط والتقنيات التي تناسب احتياجاتك البرمجية. استخدام المعاملات بشكل صحيح وفهمها يعزز من إمكانياتك في بناء برامج قوية وسهلة الصيانة في دارت.
تعتبر معاملات الدوال Parameters أحد الأدوات القوية في لغة برمجة دارت، حيث تمكننا من تمرير البيانات وتعديل سلوك الدوال بسهولة. يمكننا استخدام المعاملات الوضعية Positional Parameters والمعاملات المسماة Named Parameters بطرق مختلفة لتنظيم وتحسين الكود.
قدمنا في هذه المقالة بعض الأمثلة والشروحات لتوضيح كيفية استخدام المعاملات في دارت. قم بتجربة الأكواد المرفقة واستكشاف المزيد من الأمثلة لتعزيز فهمك وممارستك في استخدام المعاملات في دارت.
تعلم لغة دارت وبرمجتها سيمكنك من بناء تطبيقات قوية وموثوقة، وستزيد من قدرتك على تصميم وتطوير البرمجيات بشكل عام.