相关推荐
-
你需要的不是重构,而是理清业务逻辑(转)
最近我遇到了一位以前...0,唯一的办法就是花数月时间完全重构这个系统。 对于这事我有两点要说。首先,在我离开这个公司前,这个系统的单元测试覆盖率已经达到了85%,所以,不要责备我。第二,这么大规模的重构?...
-
一招教你看懂Netty!java业务逻辑设计模式
拆分方法如下: 基于业务逻辑拆分 基于可扩展拆分 基于可靠性拆分 基于性能拆分 其中,对于无法修改的遗留系统,采用绞杀者模式:在遗留系统外面增加新的功能做成微服务方式,而不是直接修改原有系统,逐步的实现对...
-
经验总结 | 重构让你的代码更优美和简洁
前言 最近有幸对订单Push项目进行了重构,向大家分享一下代码重构相关的...这不是你的问题,而是你手中的代码需要进行重构了。 代码质量的唯一有效度量是:WTFs(what the fuck)/minute 何为重构 每个人对重
-
一文教会你如何写复杂业务代码
结合实际的业务场景,我沉淀了一套“如何写复杂业务代码”的方法论,在此分享给大家。 我相信,同样的方法论可以复制到大部分复杂业务场景。 一个复杂业务的处理过程 业务背景 简单的介绍下业务背景,零售通是给...
-
【工程优化】代码重构
认知有限,望大家多多包涵,有...本文先对代码重构做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章提示:以下是本篇文章正文内容对系统和软件内部结构的一种调整,提高其可理解性,降低其修改成本。
-
重构:开篇
首先,重构的前提是在不改变当前代码的业务逻辑下对代码内部结构进行调整;其次,重构的结果并不一定在性能上有很大的提高,相反,有些重构可能还会比重构前的代码性能更低一点。 但总体来说,重构的目的是在不改变...
-
复杂业务系统的架构设计思路
比如电商的商品管理、订单交易等系统的开发和重构,业务相对复杂,开发人天在几个月以上,直接开发可能会老虎啃天,无从下手。
-
mxd文件免费下载 压缩
mxd文件免费下载 压缩
-
chromedriver-win64-136.0.7073.0.zip
chromedriver-win64-136.0.7073.0.zip
-
weixin052用于日语词汇学习的微信小程序+ssm(文档+源码)_kaic
weixin052用于日语词汇学习的微信小程序+ssm(文档+源码)_kaic
-
【css酷炫效果】纯CSS实现星空闪烁动画
https://blog.csdn.net/u011561335/article/details/146312652
-
Qt5.15.2 Linux ARM架构源码编译安装(UOS20国产系统)已编译好的包
国产系统UOS系统,华为鲲鹏处理器 ARM架构,Qt5.15.2编译输出的包。设置环境变量后可用。博客地址:https://luoyayun361.blog.csdn.net/article/details/118395262
-
基于雨流计数法的源荷储双层协同优化配置策略及经济性评估研究,基于雨流计数法的源荷储双层协同优化配置及容量寿命评估方法研究,西门子S7-200PLC和MCGS火电厂烟气监测控制系统
基于雨流计数法的源荷储双层协同优化配置策略及经济性评估研究,基于雨流计数法的源荷储双层协同优化配置及容量寿命评估方法研究,西门子S7-200PLC和MCGS火电厂烟气监测控制系统 ,西门子S7-200PLC; MCGS火电厂烟气监测; 控制系统; 烟气监测。,西门子S7-200PLC与MCGS在火电厂烟气监测控制中的应用系统
-
西门子S71511 PLC PID程序控制阀门开度,模拟量转换,博途WinCC画面完整案例分享,西门子S71511PLC PID程序控阀门开度:模拟量转换,博途wincc画面实例与程序详解,锂离子电池
西门子S71511 PLC PID程序控制阀门开度,模拟量转换,博途WinCC画面完整案例分享,西门子S71511PLC PID程序控阀门开度:模拟量转换,博途wincc画面实例与程序详解,锂离子电池SOH估计,根据循环中的规律,提取每个循环中的的电压和电流各10个健康因子,设计的基础模型结构为输入层+LSTM层+全连接层+输出层。 ,锂离子电池SOH估计; 循环规律; 电压健康因子; 电流健康因子; 基础模型结构:输入层+LSTM层+全连接层+输出层,锂离子电池SOH预测模型:基于LSTM和电压电流健康因子
-
大学生创客联盟.zip
大学生创业项目源码
-
SAP SD-Class 8 Credit Memo & Debit Memo.mp4
SAP SD-Class 8 Credit Memo & Debit Memo.mp4
-
2023-04-06-项目笔记 - 第四百四十阶段 - 4.4.2.438全局变量的作用域-438 -2025.03.17
2023-04-06-项目笔记-第四百四十阶段-课前小分享_小分享1.坚持提交gitee 小分享2.作业中提交代码 小分享3.写代码注意代码风格 4.3.1变量的使用 4.4变量的作用域与生命周期 4.4.1局部变量的作用域 4.4.2全局变量的作用域 4.4.2.1全局变量的作用域_1 4.4.2.438局变量的作用域_438- 2025-03-17
-
质子交换膜燃料电池Simulink模型:涵盖静态与动态特性,全面计算输出性能与效率,附参考公式与文献指南,基于Simulink的质子交换膜燃料电池模型:静态和动态模拟,计算输出和效率,锂离子电池仿真
质子交换膜燃料电池Simulink模型:涵盖静态与动态特性,全面计算输出性能与效率,附参考公式与文献指南,基于Simulink的质子交换膜燃料电池模型:静态和动态模拟,计算输出和效率,锂离子电池仿真,COMSOL仿真,锂电池仿真 ,锂离子电池仿真; COMSOL仿真; 锂电池仿真,锂离子电池COMSOL仿真技术研究
11 楼 kidneyball 2013-04-16 19:45
首先单元测试覆盖率85%不等于代码好读好懂,更别说好的代码还应该引导后续修改保持原本良好的风格了。
……
单元测试覆盖率不应该作为系统稳定性和可维护性的指标。
但是单元测试确实能十分有效地管理代码质量。
问题是,复杂的业务逻辑再加上层次不齐的编码,会让你原有的代码破烂不堪。
重构是个方法,但是摸清楚逻辑,更加重要。
我敢说,85%的公司注释很少,单元测试更少
我觉得作者是把重构和重写搞混了。单元测试覆盖率的最大作用就是方便重构,他辛辛苦苦写了85%的覆盖率,又不让人重构,不知道在想什么。“重构”的意思是在不添加任何新功能的前提下,改变代码结构让它更容易维护。所谓“不添加新功能”,不但是整个系统都不添加新功能,而且是绝大部分被单元测试覆盖的对外接口都不添加新功能。重构的过程本身就是理清业务逻辑的过程。如果这时候绕过代码本身去重新整理业务逻辑,把整个系统设计都改变了,那是重写,不是重构。
10 楼 freezingsky 2013-04-16 17:32
9 楼 dacoolbaby 2013-04-16 16:09
首先单元测试覆盖率85%不等于代码好读好懂,更别说好的代码还应该引导后续修改保持原本良好的风格了。
……
单元测试覆盖率不应该作为系统稳定性和可维护性的指标。
但是单元测试确实能十分有效地管理代码质量。
问题是,复杂的业务逻辑再加上层次不齐的编码,会让你原有的代码破烂不堪。
重构是个方法,但是摸清楚逻辑,更加重要。
我敢说,85%的公司注释很少,单元测试更少
8 楼 yangxinxyx 2013-04-15 22:31
一半来说,做一项重构,可能80%的时间在分析与设计,而Coding最多只占20%的时间
7 楼 longhaisheng 2013-04-14 11:54
为什么会有垃圾代码,原因很多,如时间紧,赶及程序员本身素质的原因
写代码时怎么不想着把代码写好点,觉着以后可以重构,企业老板大多不太懂技术,会
给你开发人员时间去重构吗,大多不会,有多少个企业认为代码质量重要,他们要的是
产品,要的是生产力,可是代码慢慢累加,人员不断更换,烂系统就慢慢形成了,时间
久了,这个系统就难以修改了,这时,系统想重构又很困难,遇到英明的领导,会重写
,但很多公司没有那么多时间让你重写哈,所以N多公司挂了,有部分原因是因为系统不
不行了,杯具
6 楼 kidneyball 2013-04-14 07:47
首先单元测试覆盖率85%不等于代码好读好懂,更别说好的代码还应该引导后续修改保持原本良好的风格了。
其次作者是那个项目的负责人,他现在离职了。如果文档不完善(这点作者没有提,不过一般文档不会涉及到所有业务细节),他的代码就是理解业务逻辑的唯一来源。你总不能叫那家公司现在去问客户三年前都做了哪些特殊业务处理吧,客户只会跟你说,不知道,反正这东西现在能用,你的新功能不能影响旧功能。
这堆代码把这个公司弄得那么痛苦,如果不依赖这堆代码就能理清业务逻辑,早就直接重写了,还重构什么鬼。好了,现在我不重构就看不懂这堆代码,就理不清业务逻辑。你却叫我重构前要先理清业务逻辑……
5 楼 bigtian 2013-04-13 22:55
4 楼 minn84 2013-04-13 22:16
3 楼 clxy 2013-04-12 19:33
乐扑的了,感情这作者是个“杀手”之父,哈哈。
2 楼 spiderguy 2013-04-12 17:51
1 楼 spiderguy 2013-04-12 17:50