前段时间,我负责一款APP的接口开发,其中有一个新增的操作,逻辑比较复杂,涉及到9个数据表的数据改动,而且表又跨库,这9个表呢,个别在别处还有单表操作,所以为了复用之前的数据层,笔者直接想 ...
分离和组合关注点。 引子 如下代码所示: 两段 getComparator 有一些明显重复的代码。 看上去应该可以消减这种重复,不过仔细一看,似乎还不那么容易。 这里有三点差异: 根据指定字段比较 根据指定方向排序 返回指定对象类型的比较器。 看上去是三个不同维度的用来排序的组合。怎么才能把这三个维度分离开呢 使用反射进行优化 第一个自然的想法,是使用反射的方式,将字段的获取通用化。 如下所示: ...
2021-06-11 22:51 2 208 推荐指数:
前段时间,我负责一款APP的接口开发,其中有一个新增的操作,逻辑比较复杂,涉及到9个数据表的数据改动,而且表又跨库,这9个表呢,个别在别处还有单表操作,所以为了复用之前的数据层,笔者直接想 ...
好久没写代码了,终于好不容易接到了开发任务,一看时间还挺充足的,我就慢慢整吧,若是遇上赶进度,基本上直接是功能优先,完全不考虑设计。你可以认为我完全没有追求,当身后有鞭子使劲赶的时候,神马设计都是浮云,按时上线才是王道,毕竟领导是不会关注过程和代码质量的,领导只看结果,这也许就是我等天朝码 ...
对于这一次重构的项目,我还是比较陌生的,因为我也是刚刚介入该项目,并且赶在了项目交付期,虽然做了一些功能, ...
一次项目代码重构-使用spring容器干掉条件判断 这是在一次公司项目中进行重构时,一些复杂业务时想到的一个去掉一些if else的办法。能够使代码逻辑更加清晰,减少一些业务上的耦合。 业务说明 我所在的是一个做保险的项目组,这次重构是针对其中的保费计算和核保的业务。 项目重构之前,在保费 ...
Java生鲜电商平台-一次代码重构的实战案例 说明,Java开源生鲜电商平台-一次代码重构的实战案例,根据实际的例子,分析出重构与抽象,使代码更加的健壮与高效。 1.业务说明 系统原先已有登录功能,我们打算增加一个登录IP和允许登录时间的安全限制业务。 IP 分为内网ip ...
摘要:通过一次并发处理数据集的Java代码重构之旅,展示函数式编程如何使得代码更加精练。 难度:中级 基础知识### 在开始之前,了解“高阶函数”和“泛型”这两个概念是必要的。 高阶函数就是接收函数参数的函数,能够根据传入的函数参数调节自己的行为。类似C语言中接收函数指针的函数。最经典 ...
事情的经过是这样的: 一个夏日的午后,我在啪啪啪的敲代码,正爽着呢,老大在背后拍了拍我的肩膀,说让我写个功能。 我说啥功能,他说:“operate 模块那边每次收到文件都会给你发一条消息。然后对消息进行计数,每隔一段时间,你把这个计数写入一次数据库。” 我说为什么。老大说对 ...
摘要: 科学的重构流程。 原文:如何来一次说干就干的重构 (流程篇) 作者:逐鹿 IT, 猛猛如玉 Fundebug经授权转载,版权归原作者所有。 前言 随着公司业务的爆炸式的增长,需求规模和用户规模也迅速地膨胀起来,这样给系统的三高(高性能、高并发、高可用)以及扩展性 ...