软设之迭代器模式

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

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

组成:

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

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

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

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

相关推荐
动词ing3 分钟前
【学习笔记】动态数码管显示
笔记·学习
陈年老古董3 分钟前
ClickHouse 单机搭建记录
hive·笔记·学习·clickhouse·硬件架构
一级新生25 分钟前
LLM _ Agent _ Skill _ 专家 的关系与选型笔记
java·开发语言·人工智能·笔记·大模型·智能体·skill
2603_9696948537 分钟前
【MySQL学习笔记】DQL(基础查询/条件/聚合/分组/排序/分页)与 DCL(用户权限)全解析
数据库·笔记·学习·mysql·学习方法
Zhao-Jichao1 小时前
AI Prompting for Everyone 课程笔记 - P08 上下文 Context
人工智能·笔记
鬼手点金1 小时前
Skills:领域能力的可组合单元
java·人工智能·笔记·自动化·1024程序员节
是2的10次方啊1 小时前
设计模式与生活⑨:一碗胡辣汤,用不着认识十几种香料
设计模式
夕除10 小时前
Redis 过期策略
redis·笔记·面试
Nuanyt12 小时前
Agent 学习笔记(下篇三):上线工程、进阶选择与操作界面(Stage 7 / 7.5 / 8 + 延伸路线)
笔记·python·学习·memory·aiagent·harness
叼烟扛炮13 小时前
Linux 学习笔记(四十一):TCP 并发演进——从单进程到多线程服务器
linux·运维·服务器·网络·笔记·学习·tcp/ip