软设之迭代器模式

设计模式中迭代器模式的意图是:提供一种方法顺序访问一个聚合对象中各个元素,而又不需要暴露该对象的内部表示。

打个比方,图书馆里的书籍就是聚合对象中的元素,读者借书不需要知道书怎么摆放的,只需要找图书管理员借书就可以了。图书管理员就是具体迭代器。

组成:

Iterotor:迭代器,迭代器定义访问和遍历元素的接口

Concretelterator:具体迭代器,实现迭代器的接口,在遍历时跟踪当前聚合对象中的位置。

Aggregate:聚合,定义一个创建迭代器对象的接口

ConcreteAggregate:具体聚合,实现创建迭代器对象,返回一个具体迭代器的实例。

相关推荐
AronTing2 分钟前
观察者模式:从博客订阅到消息队列的解耦实践
后端·设计模式
易元7 分钟前
责任链模式实践:电商登录校验的演变
后端·设计模式
AronTing10 分钟前
状态模式:有限状态机在电商订单系统中的设计与实现
前端·设计模式·面试
AronTing15 分钟前
组合模式实战:用树形结构管理企业组织与文件系统
后端·设计模式·面试
AronTing1 小时前
享元模式:如何通过对象共享实现亿级系统的内存优化
后端·设计模式
〆、风神1 小时前
Spring Boot 自定义定时任务组件深度解析:Quartz 集成与设计模式实战
spring boot·后端·设计模式
归辞...3 小时前
【iOS】OC高级编程 iOS多线程与内存管理阅读笔记——自动引用计数(二)
笔记·ios·cocoa
DXM05213 小时前
牟乃夏《ArcGIS Engine地理信息系统开发教程》学习笔记2
开发语言·javascript·笔记·学习·arcgis·ae
寻丶幽风3 小时前
论文阅读笔记——Multi-Token Attention
论文阅读·笔记·深度学习·语言模型·transformer
卡戎-caryon3 小时前
【Linux网络与网络编程】11.数据链路层mac帧协议&&ARP协议
linux·服务器·网络·笔记·tcp/ip·数据链路层