طرق النسخة وthis
أضف سلوكًا يعمل على بيانات النسخة
طرق النسخة وthis درس مجاني في Dart Academy على CoddyKit. هذا هو الدرس 2 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Dart Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Dart Academy 4 دروس في المجموع.
إضافة السلوك
تخزن الحقول البيانات، لكن يمكن للصنف أن ينفذ أفعالًا أيضًا. وتُسمى الدالة المعرّفة داخل الصنف أسلوب نسخة.
أسلوبك الأول
اكتب أسلوبًا كما تكتب أي دالة، لكن داخل جسم الصنف. ويمكنه قراءة حقول الكائن الخاصة واستخدامها مباشرةً.
class Dog {
String name = "Rex";
void bark() {
print("Woof!");
}
}استدعاء أسلوب
استخدم تدوين النقطة على نسخة لتشغيل أسلوبها. وتخبر النقطة Dart بأي كائن ينبغي أن ينفذ العمل.
var d = Dog();
d.bark();الأساليب ترى الحقول
يمكنك داخل أسلوب استخدام حقل باسمه. ويعمل الأسلوب تلقائيًا على النسخة التي استدعيت الأسلوب عليها.
void greet() {
print("Hi, I am $name");
}تعرّف إلى this
تشير الكلمة المفتاحية this إلى النسخة الحالية، أي الكائن الذي يعمل الأسلوب عليه في هذه اللحظة.
void greet() {
print(this.name);
}متى تكون this اختيارية؟
غالبًا ما تكون this مفهومة ضمنيًا، لذا يمكنك حذفها. فكتابة name وthis.name تعني الشيء نفسه عندما لا يحدث تعارض.
void greet() {
print(name); // same as this.name
}متى تكون this مطلوبة؟
تحتاج إلى this عندما يحجب أحد المعاملات حقلًا يحمل الاسم نفسه. فهي تخبر Dart أنك تقصد الحقل لا المعامل.
void rename(String name) {
this.name = name;
}الأساليب تقبل معاملات
يمكن لـأسلوب قبول مدخلات مثل أي دالة. ادمج تلك المدخلات مع الحقول لإنتاج نتائج مفيدة.
void addAge(int years) {
age = age + years;
}يمكن للأساليب إرجاع قيم
امنح أسلوبًا نوعًا للقيمة المُعادة وأعد نتيجة. يتيح ذلك لكائن واحد إجراء عملية حسابية وإعادة قيمة إلى شيفرتك.
String label() {
return "$name ($age)";
}الأساليب تستدعي أساليب
يمكن لـأسلوب استدعاء أسلوب آخر على الكائن نفسه. ما عليك سوى استخدام الاسم مباشرةً، وستُفهم this تلقائيًا.
void play() {
bark();
print("$name is playing");
}لماذا تهم الأساليب؟
تُبقي الأساليب السلوك قريبًا من البيانات التي يستخدمها. وتصبح كائناتك ذكية ومكتفية ذاتيًا وأسهل بكثير في الفهم. 🐕
تحقق سريع
لدى أسلوب معامل يحمل الاسم نفسه لحقل. كيف تعيّن قيمة الحقل؟
مراجعة: الأساليب وthis
تعلمت أن الأساليب تضيف السلوك وتستخدم الحقول مباشرةً، وأن this تشير إلى النسخة الحالية عند تعارض الأسماء. 🎉
الأسئلة الشائعة
هل درس «طرق النسخة وthis» مجاني؟
نعم — نص درس «طرق النسخة وthis» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Dart Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Dart Academy 4 دروس في المجموع.
ماذا ستتعلم في «طرق النسخة وthis»؟
أضف سلوكًا يعمل على بيانات النسخة تتمرن على Dart Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Dart Academy؟
لا تُشترط خبرة سابقة. Dart Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 2 من أصل 4.
كم من الوقت يستغرق درس «طرق النسخة وthis»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Dart Academy هذا؟
نعم. كل درس في Dart Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.