復習:iterator

デザインパターンの復習をしています。
今回はIteratorです。


Iterator
「数え上げを行う仕組みを提供する」
この仕組みを利用するメリットとしては、
・データの種類に関わらず共通の操作で数え上げが可能となる、操作の共通化
が挙げられます。

集合体を表すAggregateインターフェース
数え上げの機能を提供するiteratorインターフェース

この2つのインターフェースがまさに「共通化された仕組み」を提供しているのがミソでしょう。
インターフェースを実装する際には実装する関数の仕様を理解することも大事になりそうです。

同じやり方で様々なデータ構造の数え上げが可能となるのが、iteratorを用いる最大の利点だと考えられます。