
重构
文章平均质量分 76
个人渣记录仅为自己搜索用
不盈利,只为分享,转载.
找到的原版url的,尽量会贴原版url.
如有版权侵犯,请留言删除.
展开
-
重构实战-1.原则:有boolean的if else 可将if 和 else 封装为方法。2. 查看传入的Bean用了哪些数据,是否可减少数据。
最终效果: // 计算保险费并生成保险费域的FeeShareBenefitBO FeeShareBenefitBO fee = null; if (shareBenefitHistory == null) { shareBenefitLogger.debug(LogUtil.f("shareBenefitHistory:{},",原创 2016-01-15 21:52:05 · 931 阅读 · 0 评论 -
[进阶][重构实用] 泛型 限制 多个 多重控制
泛型 限制 多个 多重控制.java 重构有时候需要使用多个接口特性. 利用泛型的多种限制实现.class C<T extends Comparable<? super T> & Serializable>我们来分析以下这句,T extends Comparable这个是对上限的限制,Comparable< super T>这个是下限的限制,Serializable是第2原创 2015-05-27 20:49:11 · 1924 阅读 · 0 评论 -
重构实战落地--水平切割和跨层访问哪个好
系统要重构了,水平切分大体明确.本来期望水平拆分成不同的jar和api,实现微服务之前的部署.但是实际操作起来1. 会导致要不停的拆分子模块,2. 每个子模块都会有外部边界. 都需要配置 dubbo 的consumer ,但是又会最终在一个jvm上运行,技术边界导致不可能完全子模块化. 需要将所有的dubbo配置和mybatis配置放在一起. 然后各个子模块,按需封装w原创 2016-05-18 15:51:23 · 506 阅读 · 0 评论 -
抽象和具体化案例讲解 如无必要,勿增实体,延迟具体化.v
两个例子:例子1: 一个 ftp 下载器例子2: 支付参数总结: 1. 接口和实现. 父类和子类, 组合都能实现 抽象,层级. 2.要达到最好的泛化.最好是无参数,无返回值.所有都是变成 field.如无必要,勿增实体,延迟具体化.卡姆剃刀法则ftp 下载基本配置: host ,userNameftp 下载器: 1.下载地址,2原创 2017-05-10 22:12:17 · 3452 阅读 · 0 评论 -
如何梳理和重构 含复杂性度量
另外一篇文章,重点是熟悉,写文档https://blog.youkuaiyun.com/fei33423/article/details/79762540难点, 对系统依赖理解变更.: 1. 变正向调用 为下游系统,传一个 id,然后通过这个 id 去查. (流水系统变存储为业务系统) 2. 两个流程拆分后. 至少会出现1.上游 -- 边界转换类 -- 2.下游支持接口.(业务无关.) .........原创 2017-07-19 16:58:01 · 1307 阅读 · 0 评论 -
交易系统模块划分,模块拆分,设计,重构实战.状态
随着代码越来越多,引发了很多问题.企业架构分为事业部,其中又分为产品,开发,ui 。这是两种划分 垂直切分和水平切分说到我们技术系统,水平切分和垂直切分是什么?最小划分到什么层级?答案: 最小的流程力度.可能会有进一步拆分出底层支持模块.比如帐户,比如券.关于需求评审和设计拆分步骤: 如何识别模块. 生命周期法.......原创 2016-04-29 00:16:12 · 12997 阅读 · 0 评论 -
从接口的前置状态校验 到 状态模式的方法是否能执行 再 有限状态机(FSM)的事件校验 ,状态机
传统写接口: 1.都需要校验下当前状态是否是预期状态中的之一. [预期中的状态都支持这个事件] 2. 通过 sql中预留expectStatus来实现 新增状态时,需要 1. 新增新的状态变更方法 2. 对原来的各个状态变更,修改对应的expect值.但是到了状态机之后: ...原创 2018-06-21 14:14:05 · 1101 阅读 · 1 评论