تضمين الفئة.
Problem
الفئة لا تفعل شيئاً تقريباً وليست مسؤولة عن أي شيء، ولا توجد مسؤوليات إضافية مخططة لها.
Solution
انقل جميع الميزات من الفئة إلى فئة أخرى.
##Example
قبل

بعد

##Why Refactor
- غالباً ما تكون هذه التقنية مطلوبة بعد "زرع" ميزات فئة واحدة في فئات أخرى، مما يترك تلك الفئة بلا عمل تفعله تقريباً.
##Benefits
- يؤدي التخلص من الفئات غير الضرورية إلى تحرير ذاكرة التشغيل على الكمبيوتر—ومساحة التفكير في رأسك.
##How to Refactor
-
في الفئة المستقبلة (recipient class)، أنشئ الحقول والدوال العامة الموجودة في الفئة المانحة (donor class). يجب أن تشير الدوال إلى الدوال المعادلة في الفئة المانحة.
-
استبدل جميع المراجع إلى الفئة المانحة بمراجع إلى الحقول والدوال في الفئة المستقبلة.
-
الآن اختبر البرنامج وتأكد من عدم إضافة أي أخطاء. إذا أظهرت الاختبارات أن كل شيء يعمل على ما يرام، فابدأ في استخدام طريقة نقل الدالة و نقل الحقل لزرع جميع الوظائف بالكامل إلى الفئة المستقبلة من الفئة الأصلية. استمر في القيام بذلك حتى تصبح الفئة الأصلية فارغة تماماً.
-
احذف الفئة الأصلية.