迭代模式(Iterator)
思想概要
很难想象到这么晚了才介绍迭代器模式,它是如此的常用以至于我都忘了它也是个设计模式。迭代器模式是用来保护内部数据的设计模式,从这点来说有点像访问者模式,当然,访问者模式比较复杂,它用来定义对内部数据的一种访问动作,它不仅限于迭代,除非你想要的访问动作就是迭代。
迭代器模式用来保护内部数据,尤其是想数组,链表这一类及其容易出现访问错误的结构。对于数组和链表来说,除了访问外,删除某个元素也是件不容易的事情,把全部操作隐藏在迭代器里是有极大价值的。另外,客户代码也不会随着内部数据结构的变化而变化,面对修改是封闭的。