---
title: "التغيير المتشعب"
type: "code-smell"
slug: "divergent-change"
url: "http://localhost:3000/ar/smells/divergent-change.md"
category: "معيقات التغيير"
description: "تجد نفسك مضطراً لتغيير كثير من الوظائف غير المترابطة عند إجراء تغييرات على فئة. على سبيل المثال، عند إضافة نوع منتج جديد يتعين عليك تغيير وظائف البحث والعرض وطلب المنتجات."
---
# التغيير المتشعب

> تجد نفسك مضطراً لتغيير كثير من الوظائف غير المترابطة عند إجراء تغييرات على فئة. على سبيل المثال، عند إضافة نوع منتج جديد يتعين عليك تغيير وظائف البحث والعرض وطلب المنتجات.

## Signs and Symptoms

تجد نفسك مضطراً لتغيير كثير من الوظائف غير المترابطة عند إجراء تغييرات على فئة. على سبيل المثال، عند إضافة نوع منتج جديد يتعين عليك تغيير وظائف البحث والعرض وطلب المنتجات.

## Reasons for the Problem

في الغالب، تنشأ هذه التعديلات المتشعبة عن هيكل برنامج رديء أو ما يعرف بـ"برمجة النسخ واللصق".

## Payoff

* يحسّن تنظيم الكود.
* يقلل تكرار الكود.
* يبسّط الدعم.
## Relations

**Treated by**

- [استخراج الفئة](/ar/extract-class.md)
- [استخراج الفئة العليا](/ar/extract-superclass.md)
- [استخراج الفئة الفرعية](/ar/extract-subclass.md)

