Logo ConstructiCat
CodeBust.
Parcourir la section ▾

Modification divergente.

Vous vous retrouvez à devoir modifier de nombreuses méthodes sans rapport entre elles lorsque vous apportez des changements à une classe. Par exemple, lors de l'ajout d'un nouveau type de produit, vous devez modifier les méthodes de recherche, d'affichage et de commande des produits.

##Signes et symptômes

Vous vous retrouvez à devoir modifier de nombreuses méthodes sans rapport entre elles lorsque vous apportez des changements à une classe. Par exemple, lors de l'ajout d'un nouveau type de produit, vous devez modifier les méthodes de recherche, d'affichage et de commande des produits.

class Order {
  void applyVat2024() {}
  void applyVat2025() {}
  void formatEuInvoice() {}
  void formatUsInvoice() {}
}

##Causes du problème

Ces modifications divergentes sont souvent dues à une mauvaise structure du programme ou à de la « programmation par copier-coller ».

##Traitement

##Bénéfices

  • Améliore l'organisation du code.

  • Réduit la duplication de code.

  • Simplifie la maintenance.