الفرق بين المراجعتين لصفحة: «Refactoring/divergent change»

من موسوعة حسوب
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE:التغيير المتشعِّب (Divergent Change)}}</noinclude> == ملاحظة قبل البدء == إنّ مشكلة التغيير الم...'
 
ط مراجعة وتدقيق.
 
سطر 29: سطر 29:
* [https://refactoring.guru/smells/divergent-change صفحة توثيق التغيير المُتشعِّب في موقع refactoring.guru .]
* [https://refactoring.guru/smells/divergent-change صفحة توثيق التغيير المُتشعِّب في موقع refactoring.guru .]
[[تصنيف:Refactoring]]
[[تصنيف:Refactoring]]
[[تصنيف:Refactoring Classes]]
[[تصنيف:Refactoring Smells]]
[[تصنيف:Refactoring Smells]]
[[تصنيف:Refactoring Change Preventers]]

المراجعة الحالية بتاريخ 14:05، 26 فبراير 2019

ملاحظة قبل البدء

إنّ مشكلة التغيير المتشعِّب هي المشكلة المعاكسة تمامًا لمشكلة تغيير الأصناف المتعدِّدة (Shotgun Surgery)، إذ إنّ التغيير المتشعِّب هو مجموع التغييرات الكثيرة التي تُجرَى في صنفٍ (class) واحدٍ، أما تغيير الأصناف المتعدِّدة فهو تغييرٌ واحدٌ يُجرَى في العديد من الأصناف.

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

الحاجة لتغيير الكثير من التوابع التي لا علاقة لها بالأمر بمجرَّد إحداث أيّ تغيير في الصنف (class)، فمثلًا؛ لدى إضافة منتجٍ جديدٍ عليك تعديل التوابع المسؤولة عن البحث عن المنتجات وعرضها وتنظيمها، وهذا مستهلكٌ للوقت والجهد.

أسبابها

تُعزى المشكلة عمومًا للبُنية (structure) البرمجيّة الضعيفة (أو ما يُعرف بمصطلح copypasta programming).

وما الحل؟

إليك المزيد

ستحصل بعلاجك المشكلة على:

  • تنظيمٍ أفضل للشيفرة.
  • تقليل الشيفرات المُتكرِّرة (duplications).
  • تبسيط الدعم.

انظر أيضًا

مصادر