设计模式之访问者模式
概述
这篇文章介绍了访问者模式(Visitor Pattern)的概念、优缺点、使用场景以及代码示例。
访问者模式的定义
Represent an operation to be performed on the elements of an object structure. Visitor lets you define a new operation without changing the classes of the elements on which it operates.
封装一些作用于某种数据结构中的各元素的操作,它可以在不改变数据结构的前提下定义作用于用于这些元素的新的操作。
——《设计模式之禅》
访问者模式的目的是将数据结构和操作分离,用于数据结构固定,操作易变的场景,例如给不同的主管生成不同的报表。
UML 类图
- Visitor 抽象访问者,接口或抽象类,申明访问者可以访问哪些元素,通过
visit
方法的参数来定义哪些对象可以访问。- ConcreateVisitor 具体访问者,定义了对每个元素访问时的具体操作
- Element 抽象元素,接口或抽象类,申明接受哪一类访问者,通过
accept
方法参数来指定。- ConcreateElement 具体元素,实现
accept
方法,通常都是visitor.visit(this)
- ObjectStruture 结构对象,元素产生者,一般容纳在多个不同类、不同接口的容器,如 List、Set、Map 等。
网络抓包分析工具——Wireshark
快速阅读技巧
概述
这本书是阅读了日本作家 印南墩史 的《快速阅读术》,总结出来的快速阅读理念和技巧。
关于阅读的问题
毕业之后,要做的事情越来越多了,要处理工作和生活中的琐事,再也不能像上学时,有大把的时间用来学习,用来阅读。现在回想起大学里,那些被浪费的大把时间,真让人唏嘘。其实那个时候,时不时会想看点书,然后就去图书馆借一堆书回来,但总是翻完前几页就丢下了,下一次拿起来又从头开始看,然后把那几页看完又放下了,结果就是两周过去了,该还书了,看过的只有那几页。大学的时候,没有多少课业压力,除去上课时间,还有大把的富余时间,当然其中很大比例都被用来打游戏了,虽然很快乐,但现在回想起来,那时过的真是单调,明明可以更丰富多彩的。现在工作了,大部分时间被工作塞满,空隙又被填入各种生活琐事,留下的私人时间所剩无几,而且基本上都是碎片时间,这些碎片里基本上都交给手机了,就算是拿来阅读也似乎做不了什么。
前些年,每当网购平台开始促销的时候,总会去领很多优惠券,其中也包括图书的优惠券,那些券看起来真的很诱人,能用低于五折的价格买下很多书。于是,我果真买了一堆书回来,然后堆到了书架上,然后,然后就一直堆在那了。几年后,我付出的金钱让我的书架收获满满,顺带让我也有了一丝 “成就”。再后来,书架放不下新书了,于是我买了一块 kindle,买它的初衷当然不是用来盖泡面,或者垫枕头,后来它的确发挥了应有作用,我用它看完了半部网络小说,算是收回了一点成本。每当我想及此事的时候,就非常庆幸买的是最便宜的 kindle 型号。
认识和投资指数基金
认识 GraphQL
概述
GraphQL 是 FaceBook 开发并开源的一种针对 Graph(图状数据)查询设计的查询语言(Query Language),旨在提供 RESTful 架构体系的替代方案,其优势是查询图状数据。值得注意的是 GraphQL 没有和任何特定数据库或存储引擎绑定,本身更不是一种数据库。这篇文章介绍了 Graph QL 的概念以及应用场景。
什么是 GraphQL
GraphQL 是一种用于 API 的查询语言,也是一个满足你数据查询的运行时。 GraphQL 对你的 API 中的数据提供了一套易于理解的完整描述,使得客户端能够准确地获得它需要的数据,而且没有任何冗余,也让 API 更容易地随着时间推移而演进,还能用于构建强大的开发者工具。
读《基金投资的选购与组合技巧》下
读《基金投资的选购与组合技巧》中
读《基金投资的选购与组合技巧》上
概述
这本书从各种方向讲解了如何选择基金,以及构建基金组合以降低整体风险和获取更高收益,基金选择需要考虑的内容包括自身资产状况及风险偏好、基金种类、基金系统分析、市场行情、筛选技巧、避免误区、定投选基,构建基金组合需要考虑投资目标和风险偏好。内容非常全面,非常适合刚接触或准备开始投资基金的人群,读完这本书收获很多。本篇文章记录了阅读前三章的笔记,内容包括认清自身的风险偏好和预期收益选基,认识基金分类选基和系统分析基金状况选基。
关于本书
本书
本书是基金选购入门图书,书中全面、系统地剖析了基金市场的风险和收益,并结合各类投资者情况,分别从选购和组合两个方面来着重阐述了基金投资的技巧和方法。本书由投资经验丰富的专业人士精心编写而成,内容全面,案例丰富,具有很强的实用性和操作性,适合缺乏投资经验的基金投资者。
认识 json-schema
概述
本文介绍了 json schema 的概念和用法。
什么是 json schema
JSON Schema 是一种用来定义 json 数据结构的文件,JSON Schema 自身也是以 json 文档形式存在。JSON Schema 被设计用于对 json 文件进行校验、注释、链接导航、交互控制。官方提出了一种用于描述 JSON Schema 的新媒体类型(Media Type):application/schema+json
。
GitHub: https://github.com/json-schema-org/json-schema-spec
JSON Schema Tool: https://jsonschema.net/home