اسمحوا لي أن أطرح عليك سؤالا.
ماذا يحدث إذا كانت وظيفة hello هذه تأخذ بالفعل معلمة؟
دعنا نقول سلسلة.
أو تحية.
وستتم طباعة التحية هنا.
دعنا نزيل وداعا الآن.
هل سيظل هذا يعمل إذا ركضت؟
مرحبًا؟
أوقف الفيديو وفكر فيه.
هيا نكتشف.
لا.
هذا خطأ.
إذا كان بإمكانك محاولة إيقاف الفيديو مؤقتًا هنا ومعرفة ما إذا كان بإمكانك حل هذا ، فكيف يمكننا جعل هذا يسمح بالحجج؟
أرى ذلك على السطر الخامس هنا.
تقول السطر الخامس.
Hello ينقصه أحد تحية الحجة الموضعية المطلوبة لأننا عندما نسمي hello بالفعل ، نتوقع أن يكون
لدينا معلمة.
لكننا هنا لا نعطيها أي حجج.
كيف يمكننا حل هذا؟
حسنًا ، الطريقة الوحيدة هي القول ببساطة.
الجشع أليس كذلك؟
أو يمكننا أن نقول ما نريد.
يمكننا أن نقول X ثم هذا.
تستقبل وظيفة الغلاف المعلمة.
لذلك إذا قمت بالنقر فوق تشغيل.
همم.
يعطيني السطر 13 خطأً الآن ، لأنه بينما نحتاج الآن إلى تقديم تحية له بالفعل ، لذلك دعنا
نقول مرحبًا إذا قمت بالنقر فوق "تشغيل".
حسنا.
هذا يعمل.
وآمل أن يكون هذا منطقيًا.
الصحيح.
نحن نتصل.
مرحبًا.
مع.
أهلاً.
إذن هذه الوظيفة.
مرحبا يمر الماضي.
نحن بعد ذلك؟
احصل على حرف x الصحيح كوسيطة.
تذكر تحت غطاء المحرك أن مصمم الديكور الخاص بي يقول إنه يساوي مصمم الديكور الخاص بي.
ومرحبا.
الصحيح.
لذلك كل ما نفعله هو تشغيل مصمم الديكور الخاص بي.
مرحبًا؟
والذي يتحول الآن إلى وظيفة الراب الخاصة بهم.
وعندما نؤدي وظيفة rapt ، A ، فإننا نعطيها حجة عالية.
لذا فإن الدالة rapt تقبل هذه المعلمة ثم تقوم بتشغيل الوظيفة.
مرحبًا.
ولكن هذا هو السؤال ، ماذا لو كانت التحية تحتوي أيضًا على رمز تعبيري تقبله؟
لذلك نحن نطبع ، ونحيي ، ثم الرموز التعبيرية.
همم.
ماذا نفعل؟
حسنًا ، مرة أخرى ، سيتعين علينا إنشاء معلمة أخرى ثم معلمة أخرى ، ثم هنا ، نسميها ، دعنا
نقول ، وجه مبتسم.
إذا قمت بالنقر فوق تشغيل.
حسنًا ، يجب أن يكون هذا عبارة عن سلسلة.
إذا قمت بالنقر فوق تشغيل.
هذا يعمل ، لكن هذا أمر محموم في كل مرة أحتاج فيها إلى تغيير المعلمات.
حسنًا ، لا بد لي من تعديل هذا.
وماذا لو كانت لدينا حجج كلمات مفتاحية مثل.
تقصير.
أهلاً.
يوجد في الواقع نمط هنا يمكننا استخدامه يجعل الأشياء حقًا بسيطة بالنسبة لنا.
وكل ما نفعله هو أن نقوم بعمل أقواس النجمة ، التي رأيناها ، والتي تأخذ جميع وسيطات الموضع ،
ثم أقواس الكلمات الرئيسية ذات النجمة ، والتي تأخذ جميع وسيطات الكلمات الرئيسية ونسمي الدالة بها.
أقواس نجمة سينغ لتفكيك جميع الحجج الموضعية وأقواس الكلمات الرئيسية النجمية لفك جميع حجج الكلمات
الرئيسية.
الآن ، إذا كان هذا يبدو محيرًا ، فلا تقلق.
هذا مجرد نمط يمكنك نسخه ولصقه وتذكره.
لكن الآن تحقق من هذا.
يمكنني عمل رموز تعبيرية تساوي ، دعنا نقول ، وجه حزين.
كوسيطة الكلمة.
والآن إذا مررت للتو.
أهلاً.
مثل هذا وضرب الركض.
ودعنا نزيل هذا أيضًا.
نظرًا لأننا لسنا في حاجة إليها ، فسنسميها مرحبًا بشكل صحيح لأن لدينا مصمم الديكور ثم انقر فوق تشغيل.
انظر إلى ذلك.
انتشي مع الوجه الحزين.
الآن ، سبب تسمية هذا بالمصمم ، لأنه نمط مشهور في البرمجة.
إنه يسمى نمط الديكور.
وهذا هو نمط الديكور.
إنه يمنح مصمم الديكور لدينا مرونة حتى نتمكن من تمرير العديد من الحجج التي نريدها في وظيفة rapt الخاصة بنا
باستخدام أقواس النجوم وأقواس الكلمات الرئيسية ثم تفريغها مثل هذا داخل الوظيفة.
وهذه الصيغة ، دعنا نقول إذا لم يكن لدينا حتى عبارات الطباعة ، فهذه الصيغة هي سبب قوة
المصممين.
بمجرد استخدام هذه الأسطر من التعليمات البرمجية ، يمكننا إضافة وظائف باستخدام نمط الزخرفة لتزيين
وظائفنا.
وتستخدم أنماط الديكور في جميع أنحاء البرمجة.
لذلك فهو مفهوم قوي للغاية.
لإنهاء الدرس على Decorator.
أريد أن أتحدث إليكم عن بعض الطرق التي يمكن أن يكون بها المصممون مفيدون وبعض المواقع الشائعة
التي سنرى أنماط الديكور في الكود الخاص بنا وسنقوم ببناء مصمم الأداء الخاص
بنا والذي سيكون قادرًا لتخبرنا عن كيفية أداء وظائفنا ، ومدى سرعتها.
وأعدك ، في نهاية ذلك ، أن مصممي الفيديو سيكونون منطقيين بالنسبة لك وستكون قادرًا على
أن تشرح لأشخاص آخرين ولأصدقاء آخرين لماذا يجب علينا استخدام مصممي الديكور في برامجنا.
سأراك في ذلك.
مع السلامة.