أنماط التصميم في بايثون – دورة 1990 RUR. من ستيبيك، تدريب 130 درسًا، التاريخ: 30 نوفمبر 2023.
Miscellanea / / December 03, 2023
تقدم الدورة لمحة شاملة عن أنماط تصميم بايثون في الممارسة العملية. يغطي هذا المقرر الأنماط من خلال:
- باستخدام أحدث إصدار من بايثون
- استخدام أساليب البرمجة الحديثة: حقن التبعية، والبرمجة التفاعلية، وما إلى ذلك.
- باستخدام أدوات التطوير الحديثة مثل PyCharm
- مناقشات حول الاختلافات المختلفة في الأنماط والأساليب المختلفة
سنطلع في هذه الدورة على جميع أنماط التصميم من كتاب عصابة الأربعة، بالإضافة إلى اختلافاتها الحديثة المتنوعة مع التعديلات واستخدام ميزات لغة بايثون.
ما هي أنماط التصميم؟
أنماط التصميم هي حلول نموذجية للمشاكل النموذجية. تم طرحها للتداول لأول مرة في عام 1994 مع نشر كتاب أنماط التصميم: عناصر كائنية قابلة لإعادة الاستخدام برنامج من تصميم إريك جاما وجون فليسيدس ورالف جونسون وريتشارد هيلم (يشار إليهم غالبًا باسم العصابة أربعة).
تمت كتابة الكتاب الأصلي باستخدام C++ وSmalltalk، ولكن منذ ذلك الحين تم تكييف أنماط التصميم لتناسب جميع الأنماط المعروفة لغات البرمجة: C# وJava وPython وحتى تلك اللغات التي، بالمعنى الدقيق للكلمة، ليست موجهة للكائنات، مثل Java النصي.
في الواقع، نرى أنماط التصميم في كل مكان: في أي مكتبات، نراها مدمجة في لغات البرمجة نفسها. لذلك لا تدرك دائمًا أنك تستخدمها.
ما هي الأنماط التي يتم تناولها في الدورة؟
تغطي الدورة جميع أنماط التصميم من كتاب عصابة الأربعة. فيما يلي القائمة الكاملة للمواضيع:
- مبادئ التصميم الصلبة: مبدأ المسؤولية الفردية (SRP)، المبدأ المفتوح/المغلق (OCP)، مبدأ استبدال ليسكوف (LSP)، مبدأ فصل الواجهة (ISP)، مبدأ انعكاس التبعية (مغمس)
- أنماط التفريخ: البناء، المصانع، النموذج الأولي، الفردي
- الأنماط الهيكلية: المحول، الجسر، الرابط، المصمم، الواجهة، الانتهازية، الوكيل
- الأنماط السلوكية: سلسلة التبعية، الأمر، المترجم، المكرر، الوسيط، الوصي، المراقب، الحالة، الإستراتيجية، طريقة القالب، الزائر
لمن هذه الدورة؟
هذه دورة للمطورين ذوي الخبرة (على الأقل على دراية بـ Python) الذين يرغبون في التعرف على التطبيقات الحديثة للأنماط (وليس فقط تلك القديمة من الكتب).
أسلوب عرض الدورة
يتم تقديم هذه الدورة كسلسلة فيديو كبيرة من العروض التوضيحية للبرمجة في PyCharm والتي تم تقديمها باستخدام محرك Kinetica. يزيل Kinetica الفوضى البصرية للمحرر، ويركزك على الكود. تأتي معظم العروض التوضيحية مع ملف كود مصدري واحد، بحيث يمكنك تنزيله وتشغيله على الفور في PyCharm أو IDLE أو في أي مكان.
لا توجد مخططات UML في هذه الدورة. جميع العروض التوضيحية هي برمجة حية.
المتطلبات الأولية
معرفة جيدة في بايثون
6
الدوراتالعمل مع منصة .NET منذ عام 2003. شارك بشكل احترافي في تصميم البرامج وتنفيذها لأكثر من 10 سنوات، وبشكل رئيسي على منصة .NET. متخصص معتمد في WPF وWCF. متحدث عام في اجتماعات ومؤتمرات .NET في موسكو.
أهم ما يميز دوراتي هو الضغط على الأساسيات. لا أحب أن تنتشر الأفكار في جميع أنحاء الشجرة (إذا كان الأمر لا يتعلق بأي شيء). الإيجاز هو أخت الموهبة وأعتقد أنه في العصر الحديث من المعلومات الزائدة أمر ضروري ركز على الشيء الأكثر أهمية وقم بتصفية "الإضافي" حتى لا يصبح هذا "الإضافي" في الحقيقة ستكون بحاجة.