التخطيط الشمولي المفرط (Speculative Generality)

من موسوعة حسوب
< Refactoring
نسخة 13:40، 30 سبتمبر 2018 للمستخدم Nourtam (نقاش | مساهمات) (أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE:التخطيط الشمولي المفرط (Speculative Generality)}}</noinclude> == توصيف المشكلة == وجود أصنافٍ (classe...')
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)
اذهب إلى: تصفح، ابحث

توصيف المشكلة

وجود أصنافٍ (classes) أو توابعَ (methods) أو حقولٍ (fields) أو معاملاتٍ (parameters) غير مُستخدَمة في الشيفرة.

أسبابها

إنشاء عناصرَ إضافيّةٍ "قد" يحتاجها المبرمج مستقبلًا لميّزات يُخطِّط لها (وقد لا تُنفَّذ أصلًا)، وغير مستخدمةٍ بالوقت الحاليّ، مما يجعل الشيفرة أكثر صعوبةً بالفهم والدعم.

وما الحل؟

إليك المزيد

ستحصل بحلِّ المشكلة على شيفرةٍ أقصرَ ودعمٍ (support) أسهل.

تجاهل المشكلة

يمكن تجاهل المشكلة بإحدى الحالتين:

  • عند العمل بأكثرَ من إطار عملٍ (framework) واحدٍ حيث يكون من المنطقيّ -بلا شكٍّ- إنشاءُ مهامٍ غير مستخدَمةٍ في إطار العمل الحاليّ طالما أنّ هناك إطار عملٍ آخر بحاجةٍ لها.
  • ارتباط أيّ عنصرٍ تنوي حذفه باختبارات الوحدات (unit tests)، إذ ستحدث مشكلةٌ (إن حُذِفت بعض العناصر) عند حاجة الاختبار لطريقةٍ ما للحصول على المعلومات الداخليّة من الصنف (class) أو أداءِ عمليّات خاصّة (special) أثناء إجراء الاختبار.

انظر أيضًا

مصادر