Pipeline设计模式,了解一下?

点击↑上方↑蓝色“编了个程”关注我~

每周至少一篇原创文章

这是本公众号的第 30 篇原创文章

荒腔走板

咖啡与果汁

这周六趁着凉快,出去玩了一天。下午去老婆公司楼下的咖啡厅睡了一下午,醒来后再来一杯老婆亲手做的咖啡和鲜榨的不掺一滴水的果汁。那味道,别提多香了,上头!

虽然拉花不完美,但也有模有样。

我发了一个朋友圈,说希望有一天,可以回成都,开一家书店。她做咖啡,我写代码。有朋友评论说,这都不忘写代码,这么敬业的吗!我说,写代码不是工作,是我的兴趣爱好。

其实还有句话没说完,我「想写自己想写的代码」,做自己想做的产品。还想写博客,写小说,还想学画画。当然了,现在这都只是梦想,但是我希望在三十几岁的时候或者之前,能够实现它。

另外说一个事,以后公众号发文章改到周五,这样我有充足的时间去找配图或者自己画图,尽量多弄点好看的图。

下面开始今天的文章。Pipeline设计模式是我在来新公司才接触到的,也是在项目上广泛使用的一种东西。觉得挺有意思的,所以写一篇文章向大家介绍一下,希望大家喜欢。

需求

前几天小明接到一个需求,要开发一个“简单”的支付处理流程,用来处理用户下单后的一系列处理流程。这个处理流程有很多环节,包括:订单计算(包括折扣计算),金额校验,库存校验,优惠券校验,执行支付,扣减优惠券,扣减库存,通知第三方物流,通知用户付款成功,通知商家发货等等。

小明接到这个需求后,心想这个需求不难,就是简单的计算、校验、调接口、发消息之类的。写if-else谁还不会?于是开始刷刷刷写下了三百行代码,就跟下面条一样,一气呵成。

面条

重构

代码是写完了。不过在Code Review的时候,被老大劈头盖脸地骂了一顿:“你这代码全挤在一堆,叫别人以后怎么维护?你自己过两个月看得懂吗?”

小明懂老大的意思,代码的可读性很重要,这样以后维护起来才方便。所以抽了一些方法出来,主入口只保留最核心的流程。顺便还加了单元测试来保证内部逻辑的正确性。

抽方法

改完后给老大一看,老大语重心长地说道“小明啊,代码可读性很重要,可维护性也很重要。你看,有些环节在其它场景说不定也能用到,比如库存校验、执行支付、发通知等等。”

“我懂的,这样,我把这些流程抽成单独的类,这样以后就可以复用了”。

抽取类

写完后再次给老大过目。老大看后点点头:“不错,现

  • 6
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值