Does the Iterator Pattern Stand the Test of Time?
In object-oriented programming, the iterator pattern is a design pattern in which an iterator is used to traverse a container and access the container's elements. The iterator pattern decouples algorithms from containers; in some cases, algorithms are necessarily container-specific and thus cannot be decoupled.
Published at DZone with permission of Ayende Rahien, author and DZone MVB. (source)It is really hard to think about any other pattern that has been more successful. In particular, patterns have long been about overcoming shortcoming of the language or platform.
In this case, iterators has became part of both language and platform in most modern systems.
- System.Collection.IEnumerable
- java.util.Iterator
- Python’s __iter__()
Basically, it is so good, it is everywhere.
(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)
Tags:





