修改代码的艺术-读书笔记

1.需求总是在改交

那些不能适应未来需求变更的设计是糟糕的设计。 能够适应未来需求变更的设计是每

位合格的软件开发者的目标

2.修改软件的四个原因:添加特性、修正 bug、改善设计、优化资源使用

商店只有一条规则:买满 100 元,免运费;没满 100 元,收 10 元运费。

即:买 90 元商品,付款 100 元;买 100 元商品,付款 100 元。

什么情况下,我们会去修改它?

1.加功能

老板想给会员增加优惠,老板说:"以后会员买满 80 元就包邮

2.修复bug 这个很好理解,就是程序运行结果不符合预期

3.改善设计

代码运行结果符合预期,但是实现起来非常不优雅,比如复杂逻辑全在一个很复杂的函数里面

4.优化性能

比如计算过程太慢,顾客点"结算",原来要等两秒。我们改善计算方法,让它只需要等半秒。

3.自动化测试和单元测试

整理代码之前,先把用来检查它的测试准备好。带着反馈工作

测试分成自动化测试和单元测试,自动化测试是端到端的测试,单元测试是检查一小段代码

单元测试 适合在你修改代码的时候,频繁、快速地告诉你结果有没有变。

经常做这样的循环:

改一小处 → 运行相关单元测试 → 看结果 → 再改下一处。

单元测试经常遇到一个这样的问题:依赖太多

你想单独运行这个"小计算器",它却非要先连接数据库,查询顾客资料

4.测试驱动开发

先用测试写清楚"做到什么才算完成",再去实现功能。

相关推荐
西部风情2 个月前
如何解读《究竟是什么在决定你的价格(估值)》
读书笔记
蓝悦无人机2 个月前
《Planning algorithms》读书笔记——第1章 引言
算法·读书笔记·规划算法·lavalle
程序媛一枚~3 个月前
202636读书笔记|《重走三毛之路:我们活在现在,不活在将来》——不被既有的规则所束缚,勇于突破
生活·读书笔记·轻游记·重走三毛之路·环球游记
lunzi_fly5 个月前
《图解HTTP》--第5章-与HTTP协作的Web服务器
读书笔记·图解 http
lunzi_fly5 个月前
【学习笔记】《Python编程 从入门到实践》第4章:for循环、range()、切片与元组
读书笔记·python 小白学习
Strugglingler5 个月前
Linux Device Drivers-第八章 内存分配
linux·kernel·读书笔记·内存分配
程序媛一枚~5 个月前
202617读书笔记|《猫无所谓,我无所畏》——人类总在〔生活〕与〔谋生〕间纠结
读书笔记·治愈系漫画·喵无忌·猫无所谓,我无所畏·莱奥福雷
lunzi_fly5 个月前
【学习笔记】《Python编程 从入门到实践》第2章:变量命名规则、字符串操作与数值类型详解
读书笔记·python 小白学习
lunzi_fly5 个月前
【学习笔记】《Python编程 从入门到实践》第1章学习笔记:Python环境搭建与Hello World(完整版)
读书笔记·python 小白学习