Qu'est-ce qu'un itérateur?
Un itérateur est une construction de langage informatique qui permet à un programme de lire de manière systématique un groupe de valeurs de données ou d’informations. Les itérateurs permettent également un accès individuel à chaque membre du groupe, sans affecter le reste du groupe. Ils sont utilisés dans de nombreux langages de script et de programmation, notamment C ++, Java, PHP et Perl. Leur implémentation est indépendante des objets analysés, ce qui leur permet d'analyser tout type de groupe d'objets.
Voyager à travers un groupe d'objets avec un itérateur s'appelle généralement itérer ou parcourir. Dans la plupart des langages informatiques, les itérateurs sont utilisés pour parcourir des groupes d'objets liés appelés collections. Leurs implémentations sont très flexibles et peuvent être utilisées avec des collections de toutes tailles. En règle générale, ils sont plus sûrs qu'un simple accès aux éléments dans une collection, car leur plage est limitée aux éléments de la collection. Bien qu'il soit encore possible d'accéder à un index hors limites, il est peu probable que l'itérateur soit utilisé correctement.
Les itérateurs sont définis, initialisés et gérés en mémoire différemment selon le langage informatique dans lequel ils sont utilisés. La syntaxe générale pour eux, en revanche, est similaire dans la plupart des langues. Il existe deux types de syntaxe différents pouvant être utilisés pour les itérateurs, définis de manière explicite ou implicite.
Les itérateurs explicites impliquent la création d'un objet itérateur, lequel est ensuite utilisé dans une boucle de parcours sur les éléments d'une collection. Les itérateurs implicites impliquent un type spécial de structure de boucle qui crée l'objet itérateur sans le spécifier auparavant. Que les itérateurs explicites ou implicites soient utilisés ou non pour une traversée particulière dépend généralement de la préférence du programmeur, car les différences de quantité de code ou de performances entre eux sont négligeables. La plus grande différence entre les itérateurs explicites et implicites réside dans le fait que les itérateurs explicites montrent la création d'un itérateur dans le code source, alors que les itérateurs implicites ne le montrent pas.
Chaque fois qu'une collection d'objets est disponible, un itérateur peut être utilisé pour les analyser. Selon les capacités d'un langage informatique, les itérateurs peuvent être utilisés sur des tableaux, des cartes, des listes et divers autres types de collections. Les itérateurs sont une caractéristique relativement répandue des langages de programmation, et la plupart des langages courants proposent un certain type de fonctionnalité. Certains langages informatiques autorisent les itérateurs avec des fonctionnalités supplémentaires, telles que des restrictions sur le nombre d'accès à un élément. Étant donné que ces fonctionnalités ne sont pas universelles, il existe parfois des moyens de les implémenter indépendamment des itérateurs eux-mêmes.