当前位置: > 时尚穿搭
搭配套餐代码(设计模式之组合套餐模式)
2023-06-02 10:58:01
Mars
190
来源:疯狂敦敦敦

搭配套餐代码。需求小故事:

搭配套餐代码

小明,刚坐下打开电脑,一个个的需求就扑面而来。需求大体如下

1,在顶部模块添加一个文字描述

2,在顶部模块添加一个视频

3,在顶部模块添加一个图片

4,在顶部模块添加一个图片和文字

5,。。。。。

此时犯难的小明告诉自己,要冷静,如果按照需求一个个的添加,永远做不完。此刻老猿猴路过,看见犯难的小明说,什么需求啊?这么挠头啊?小明讲述完一遍后,老猿猴开始了他的分析:

通过观察可以看出来,这些添加的内容是相互独立的几种类型,对某一个类型的修改并不影响其他模块。所以你完全可以将每一类模块抽象成面向对象中的每一个类,这样就不存在相互影响了。需要完成什么需求,只需要抽取出需要的独立模块类组合一下就可以实现。此时使用组合模式是最符合的

小明问:啥是组合模式呢?

打个比方:当我们进入快餐店的时候,我们可以一个一个地选择我们需要的菜,这样会比较麻烦,而套餐确实将大部分需要的菜组合在一起,大家直接选择就会很便捷还方便。

具体怎么操作呢,代码实现:

第一步:依次实现各个子类

各个子类

第二步,创建子类映射工厂

映射工厂

第三步,创建模拟组合数据

组合模拟数据

第四步,创建解析数据的方法

解析方法

通过,执行解析方法,我们就可以获取到对应数据结构的组合内容。当然由于各个子类是相互独立的,我们就可以实现不同的子类的渲染而不需要关系其他内容。

直接操作数据的组合就可以完成不同的需求组合。

下节剧透:

接下来的小明,在开发中会涉及到需要其他同事辅助开发才能完成的需求。看看有没有什么好的设计模式来解决,这种相互依赖的需求

大家可以多多关注,我会慢慢更新的

本文关键词: 搭配套餐代码

相关推荐