دفع الحقل لأسفل (Push Down Field)

من موسوعة حسوب
< Refactoring
مراجعة 09:56، 26 فبراير 2019 بواسطة جميل-بيلوني (نقاش | مساهمات) (مراجعة وتدقيق.)
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)
اذهب إلى التنقل اذهب إلى البحث

المشكلة

هل يستخدم الحقل في بعض الأصناف الفرعية فقط؟

الحل

نقل الحقل إلى هذه الأصناف الفرعية.

مثال

قبل إعادة التصميم

يُستخدَم الحقل fuel الموجود في الصنف Unit الأب في صنف فرعي واحد فقط الذي هو Tank:

يستخدم الحقل في بعض الأصناف الفرعية فقط.
يستخدم الحقل في بعض الأصناف الفرعية فقط.

بعد إعادة التصميم

نقل الحقل من الصنف الأب إلى الصنف الفرعي المستخدم فيه:

نقل الحقل إلى هذه الأصناف الفرعية.
نقل الحقل إلى هذه الأصناف الفرعية.

لم إعادة التصميم؟

على الرغم من أنه كان من المقرر استخدام حقل بشكل عام لجميع الأصناف، في الواقع لم يستخدم الحقل إلا في بعض الأصناف الفرعية. على سبيل المثال، يمكن أن تحدث هذه الحالة عندما لا تتحقق الميزات المخطط لها.

ويمكن أن يحدث هذا أيضا بسبب استخراج (أو إزالة) جزء من وظيفة التسلسل الهرمي للصنف.

فوائد تطبيق الحل

  • يُحسِّن من التماسك الداخلي للصنف. يتواجد الحقل حيث يُستخدم في الواقع.
  • عند الانتقال إلى عدة أصناف فرعية في وقت واحد، يمكنك تطوير الحقول بشكل مستقل عن بعضها البعض. يُنشئ هذا تكرارًا للشيفرة، لذا ادفع الحقول لأسفل فقط عندما تكون عازمًا حقًا على استعمال الحقول بطرق مختلفة.

آلية الحل

  1. عرِّف حقل في كل الأصناف الفرعية اللازمة.
  2. أزِل الحقل من الصنف الأب.

انظر أيضًا

مصادر