设计模式
文章平均质量分 76
沧海一渔
乘风破浪会有时,直挂云帆济沧海
展开
-
图片格式转换类设计
文章目录问题引入问题引入假设我们有这样一个程序,需要对不同格式的文件进行转换,这些文件描述的是同一种事物。比如,拍摄的同一个场景的图像数据(裸数据),可以压缩保存成bmp、jpg等格式的文件。假设只有一种需求,就是裸数据Raw编码和各种格式之间的转换。自然想到每一种格式用一个类来封装,实现该格式与Raw格式的转换。再仔细研究,我们可以将这个功能抽象成一个接口IImageCode,提供两个抽象函数encode和decode。encode负责将Raw转化成各种格式,那么就有Bmp、Jpg等类。裸数据我们用原创 2021-09-08 10:22:23 · 289 阅读 · 0 评论 -
有限状态机
文章目录有限状态机状态机的表示状态转移图二维表实现穷举法查表法状态模式有限状态机有限状态机(Finite State Machine) 缩写为 FSM。以下简称为状态机。状态机有 3 个组成部分:状态、事件、动作。状态机大体分为 4 个组成部分:状态、事件、动作。状态:所有可能存在的状态。包括当前状态和条件满足后要迁移的状态。事件:也称为转移条件,当一个条件被满足,将会触发一个动作,或者执行一次状态的迁移。动作:条件满足后执行的动作。动作执行完毕后,可以迁移到新的状态,也可以仍旧保持原状态。原创 2021-06-18 16:26:20 · 20510 阅读 · 4 评论