《敏开》--札记2
第3章 计划
1.任务拆分
p17下:
开发人员往往会低估那些。。。
p18上:
任何过大的素材都应该被分解成小一点的部分。。。
当分割或合并一个素材时,应该对其。。。。
2.发布计划
如果指导了开发速度。。。
p18下:
由于开发速度开始时并不准确,所以选择也是粗略的。
3.迭代计划
为每次迭代做计划时采用的开发速度。。。。
4.任务计划
在新的迭代开始时,开发人员和。。。。
每个开发人员都知道在最近一次的。。。。
p19下:
在迭代进行到一半的时候。。。。
5 迭代
每两周,本次迭代结束。。。。
6结论
通过一次次的迭代和发布。。。。
开发人员看到的是基于他们自己估算并且。。。。
第4章 测试
编写单元测试是一种验证行为,更是一种设计行为。。。
1.测试驱动的开发方法
TDD对开发的影响
(1)程序中的每一项功能都有测试来验证它的操作的正确性。。。。
(2)迫使我们从程序调用者的有利视角去观察。。。。
(3)迫使我们把程序设计为可测试的,解除软件中的耦合。
(4)测试用例(含单元测试代码)可以作为一种无价的文档形式(比如作为调用的sample程序)。。
测试驱动常常会暴露程序中应该被解耦合的区域。
p24中:对于payroll类的解耦合是件好事。。。。
2.验收测试
单元测试是用来验证系统中个别机制的白盒测试。验收测试是用来验证系统满足客户需求的黑盒测试。
优先编写验收测试的行为。。。。
3.结论
p27下:测试驱动的三大好处:
(1)验证:如果能够一天多次地运行所有的测试。。。。
(2)文档:单元测试和验收测试都是一种文档形式。。。。他们是准确可靠的。程序员能够阅读单元测试。。。
(3)解耦合:测试驱动最重要的好处就是它对。。。
第5章
P28下:
重构定义:在不改变。。。。。
每一个软件模块都具有三项职责。。。。。
p38中间:
大多数情况下,重构提取出新函数所增加的可读性是值得花费额外开销的。
但是将循环内部的代码重构提取到新函数,将会循环调用该函数造成较大性能损失,此时要评估是否值得。
P38下:
在日常开发中频繁地重构,可以避免不优雅代码的积累。我们可以每天通过最小的努力就能够对系统进行扩展和修改。要想
具有这种能力,最重要的就是要保持代码的清洁。
第六章
案例略
浙公网安备 33010602011771号