Sommaire

Exemple

Nous voulons donner un accès séquentiel aux véhicules composant le catalogue. Pour cela, nous pouvons implanter dans la classe du catalogue les méthodes suivantes :

  • début : initialise le parcours du catalogue.

  • item : renvoie le véhicule courant.

  • suivant : passe au véhicule suivant.

Cette technique présente deux inconvénients :

  • Elle fait grossir inutilement la classe du catalogue.

  • Elle ne permet qu’un seul parcours à la fois, ce qui peut être insuffisant (notamment dans le cas d’applications multitâches).

Le pattern Iterator propose une solution à ce problème. L’idée est de créer une classe Itérateur dont chaque instance peut gérer un parcours dans une collection. Les instances de cette classe Itérateur sont créées par la classe de collection qui se charge de les initialiser.

Le but du pattern Iterator est de fournir une solution ...