Aller au contenu
uencoder

Strategy Pattern

Le pattern stratégie encapsule des algorithmes en objets stratégie indépendants, changeant d'algorithme à l'exécution via une interface et évitant les embranchements conditionnels.

Objectif

Rendre les familles d'algorithmes interchangeables, en découplant les clients des implémentations.

Mécanisme

On définit une interface stratégie que chaque algorithme implémente. Le contexte détient une référence de stratégie et lui délègue. Remplacer l'objet stratégie à l'exécution change le comportement. Combiné au pattern fabrique pour créer les instances de stratégie.

Cas d’usage

  • Changement d'algorithme
  • Élimination des conditionnelles
  • Stratégies de paiement ou de tri

Termes associés

References