شرح المفهوم
تتناول "إعداد C# وأساسيات .NET: استراتيجية إعادة الهيكلة" كيفية أخذ جزء صغير من التعليمات البرمجية العاملة وإعادة تشكيله بحيث يصبح القصد منه أسهل في الفهم. بدلاً من التعامل مع إعادة الهيكلة كتحسين شكلي، ستستخدمها لجعل دالة صغيرة أسهل في القراءة والاختبار والتوسيع لاحقًا. يبقى الدرس مناسبًا للمبتدئين، ولكنه يقدم أيضًا عادة مهمة في عمل .NET الحقيقي: امنح المنطق البسيط أسماء واضحة، حافظ على تركيز كل دالة، وقم بإجراء التغييرات دون كسر السلوك.
أين تضع الكود
- عرّف متغيرات اللون والموضع في الأعلى.
- أنشئ منطق رسم الأشكال أو وضعها في المنتصف.
- اعرض المخرجات (طباعة، لوحة، SVG، أو كتلة منسقة) في النهاية.
مرجع الأوامر
- أعد تسمية الدالة ومعاملاتها بحيث يكون المعنى التجاري واضحًا قبل قراءة جسمها.
- شغّل النسخة الأصلية، أعد هيكلتها، وتأكد أن نفس المدخلات لا تزال تنتج نفس النتيجة.
- استخرج قرارًا صغيرًا واحدًا إلى دالة منفصلة فقط إذا كان ذلك يجعل الكود أسهل في المسح.
- دوّن سببًا واحدًا يجعل النسخة المعاد هيكلتها أسهل للمراجعة الأسبوع القادم.
دليل خطوة بخطوة
- شغّل الكود الأولي مرة واحدة ودوّن النتيجة المتوقعة قبل تغيير أي شيء.
- حدد المسؤولية الحقيقية للدالة وأعد تسميتها لتناسب هذه المهمة.
- أعد هيكلة جزء واحد من الكود دون تغيير المخرجات للمدخلات النموذجية.
- اختبر حالة طبيعية واحدة وتنوعًا بسيطًا واحدًا، مثل كمية مختلفة.
- اختتم بفحص سريع: هل الأسماء، جسم الدالة، والمخرجات كلها سهلة الفهم؟
تمارين تطبيقية
- أعد هيكلة دالة تحسب خصمًا بحيث تكون المدخلات والقيمة المعادة أوضح.
- أعد كتابة المثال باستخدام دالتين صغيرتين بدلاً من واحدة، ولكن حافظ على نفس السلوك.
- أنشئ مثالاً مشابهًا لحساب إجمالي تذكرة فيلم أو فاتورة بقالة.
تحديات برمجية
- أضف التحقق من صحة المدخلات للقيم السالبة دون تحويل الدالة إلى كتلة منطقية طويلة.
- قارن نسخة مدمجة من سطر واحد بنسخة أكثر وضوحًا واشرح أيًا منهما ستُبقي.
مهام تمرين صغيرة
- أعد تسمية معرف واحد لإزالة الغموض.
- أضف تشغيل اختبار إضافي واحد بأرقام مختلفة.
- اكتب ملاحظة من سطر واحد تشرح ما تحسن بعد إعادة الهيكلة.
خطأ شائع
Mixing x and y axes or using wrong coordinate origin causes shapes to appear in unexpected places.
تحدٍ مصغّر من الواقع
Draw one square, one triangle, and one circle, then move X marker 2 steps right and 1 step down.