DP讨论——访问者模式

学而时习之,温故而知新。

访问者模式

角色

3个角色,访问者类,被访问者类,管理被访问者类的类。

特色

所谓访问者模式,我感觉就是被访问的类的方法形参是别的对象引用,然后临时过来进入一下,又出去,进进出出的,好不快活。

应用场景

游戏上没有啥体验。

但是我见到过解析器,A对象的方法的入参是解析器,进去捞出来解析的数据,缓存到解析器里,而这个解析器就是充当了访问者的角色------进去又出来,很嗨皮。我一时不知道这样的代码形式是个啥玩意。直到看到了访问者模式,原来如此。

其实新的设计模式是从旧有的代码里总结出来的,起个名字吧,就这样。

思考/启发

现在我越来越觉得,设计模式就是不同场景下代码(或者类)的组织形式、武功招式或者兵法。

相关推荐
deng-c-f10 小时前
Linux C/C++ 学习日记(28):KCP协议(四):如何实现更复杂的业务:将连接状态的管理进行封装,用户只需实现发送、接收、断开的处理逻辑。
学习·网络编程·kcp
Deschen11 小时前
设计模式-外观模式
java·设计模式·外观模式
立志成为大牛的小牛13 小时前
数据结构——二十三、并查集的终极优化(王道408)
开发语言·数据结构·笔记·学习·程序人生·考研
QT 小鲜肉14 小时前
【个人成长笔记】Qt Creator快捷键终极指南:从入门到精通
开发语言·c++·笔记·qt·学习·学习方法
QT 小鲜肉16 小时前
【数据结构与算法基础】05. 栈详解(C++ 实战)
开发语言·数据结构·c++·笔记·学习·算法·学习方法
A9better17 小时前
嵌入式开发学习日志40——stm32之I2C协议层
stm32·单片机·嵌入式硬件·学习
恋红尘17 小时前
设计模式详解
设计模式
ha204289419417 小时前
Linux操作系统学习之---线程控制
java·linux·学习
Laplaces Demon19 小时前
Spring 源码学习(十四)—— HandlerMethodArgumentResolver
java·开发语言·学习
青衫码上行20 小时前
【从0开始学习Java | 第22篇】反射
java·开发语言·学习