公众号文章候选

TDD核心:Tasking

2019-04-21  本文已影响0人  代码与团队CodeCrew

外行看高尔夫的挥杆,就是一个动作。然而老虎伍兹这样的高手,会把它分解成多个动作,逐一刻意练习:

1. 开球准备。要领有:球的位置,上半身倾斜角度,身体重心,背部挺直,等等。

2. 上杆。要领有:双手始终在胸前,增加挥杆半径。

3. 上杆顶点。要领有:左肩与下巴相对位置,髋部扭动幅度,重心,右膝微曲。

4. 下杆。又分解为滑动、旋转、弹跳等动作。

5. 触球。要领有:头部留在球的后方,左腿伸直完美支撑,双臂完全伸直,等等。

程序员也一样,分解任务是核心竞争力。

TDD的“红-绿-重构”循环,看似简单,但却一点都不容易,每个循环就是一个task,怎么把一个复杂问题分解成一个个的task,并且是渐进式地拆解?

这是TDD最难的也是最有智慧的地方:拆解任务,而且不是事先拆解,而是让任务不断浮现。

上一篇 下一篇

猜你喜欢

热点阅读