视频链接
http://vimeo.com/19404746
学习中很重要的一部分是向大师学习. Brian Marick 是敏捷宣言最早的17个签署人之一. 据说他是那17人中唯一一个测试背景的人 (待考证). 而且, 他 Clojure 也玩的很牛, 还写了书.
他上面的Kata视频很好的展现了用 Clojure 这个函数式语言和 TDD 来解决问题的全过程. 我看了几遍, 表示收获很大.
不过, 我比较自己前段时间用 Scala 做的 Anagram Kata, 感觉到 Brian 的步子有时比我想象的大不少. 比如, 通过第一个 win? 的测试时的代码. 不知道大家怎么看呢?
看了他的视频, 再加上我自己的感受, 我发现用函数式语言进行 TDD 时, generalize 代码的过程 (也就是代码演进的过程) 通常比命令式语言要来得快.
谢谢,
Joseph