Design pattern stratégie
Le design pattern stratégie permet d’appliquer un algorithme dynamiquement au sein de votre application. On a donc une famille d’algorithmes au sein d’objets interchangeables a l’aide d’une interface. Il est assez simple, et même probable que vous l’utilisait déjà sans le savoir. Nous allons donc voir un peu plus en détail le design pattern stratégie comme cela à été demandé il y a peu.
Nous avons donc une interface qui contient toutes les méthodes communes a nos algorithmes. Ensuite dans un objet qui implémentera cette interface nous allons mettre le code correspondant a notre algorithme. Ainsi par exemple nous avons une collection d’objet implementant cette interface on peut leurs appliquer les méthodes communes sans avoir la moindre idée de la classe réelle.
Le design pattern peut etre utilisé par exemple pour effectuer des tris. Ensuite dans les classes les implémentant nous pouvons donc utiliser des algorithmes totalement différent puis permettre leurs utilisations au sein d’un objet principal en utilisant l’interface.
Pour expliquer ce design pattern nous allons utiliser des applications différentes pouvant être lancé par une classe principale qui ne sait pas quelle application elle va lancer. On utilise juste l’interface.
Nous avons donc deux applications (A et B) ayant pour interface ApplicationInterface. Une classe principale qui appelle la méthode run d’un objet implémentant l’interface ApplicationInterface. Ainsi notre classe principale peut faire les différents appel sans avoir la connaissance de la classe réelle.
Ceci permet d’avoir bien entendu un code plus souple et maintenable, bien entendu il est fortement conseillé de privilégier l’utilisation des interfaces a celle des classes. En effet cela vous permettra d’avoir dans un premier temps un code plus souple mais surtout cela vous permettra d’écrire plus facilement vos tests.
comments powered by Disqus