定义
提供一种方法顺序访问一个聚合对象中的各个元素,而不是暴露去内部的表示
设计原则
一个类应该只有一个引起变化的原因
单一职责
当我们允许一个类不但要完成自己的职责(管理某种聚合),还要同时担负更多的责任(例如遍历)时,我们就给了这个类两个变化的原因,如果我们这个类中遍历的方式改变的话,这个类也必须跟着改变。
这个原则告诉我们,尽量让每个类保持单一原则。
高内聚低耦合
当一个模块或一个类被设计成只支持一组相关的功能时,我们说它具有高内聚;反之,被设计成支持一组不相关的功能时,我们说它具有低内聚。
下面是它的结构图
例如有一家早餐店,他们提供煎饼和面包两种菜单,每种菜单分类下都有多个不同的子菜单,现在我们要获取菜单中每一个子菜单的内容,但是煎饼和面包分别使用了数组和集合将子菜单项进行了封装,我们要统一这两种菜单取出的方式,如下是它的结构图:
迭代器模式.png
网友评论