摘要:
最近,接到一个需求,在数据计算之前,根据需求的具体内容对数据进行过滤,保留下需要计算的那部分。
对于职场小白没经验的我来说,拿到需求,在确定于什么位置过滤数据以后,就开始义无反顾地码代码!!
怎么码呢?当然是建立需要过滤的接口及实现类,然后在里面进行过滤的具体操作。
由于过滤数据的两部分是对同一内容进行操作,于是在计算数据之前,
嗯,调用第一个实现类方法得到要过滤的内容,循环过滤数据,过滤第一部分;
再来调用第二个实现类方法得到要过滤的内容,循环过滤数据,过滤第二部分。
到这里,需求的功能性基本上算是完成了。但这样的方式好么?!
如果再来第三个第四个相同的过滤操作呢?!接着如上循环么?!
明眼人都能看出来这种方式存在了很大的代码冗余,效率并不是很高,
且后一部分的过滤在前一部分的过滤之后,耦合太紧,以后再看到的话肯定头疼。
于是,在同事亦师父的林哥的耐心指导下,开始以责任链的形式来优化这部分代码。 阅读全文