Daniel Lv (吕国宁)和Daniel Teng(滕振宇,www.danielteng.com)一起用结对编程和测试驱动开发方式,利用用Ruby, RSpec, Rake实现Game of Life编程练习(Kata)。这是第二部分。(第一部分不要只展示代码,展示如何演进代码)
第一期视频发布后,我们陆续收到下面一些Feedback:
Feedback from RubyChina
* 对游戏规则不熟悉
* 对极为细小的单元测试步伐不适应
* 为什么不用自动测试工具?
* 尽量帮助初学者学习TDD的方法,原理
Feedback from Daniel Teng’s friends
* 有些测试用例的沟通性不强
* 接口设计不够友好
所以在本期视频的开头部分,两个Daniel分别就这些Feedback给大家做了解释,以及我们如何在后续的视频中提高视频质量。此外Daniel Teng还特别阐述了这个系列视频教程背后的原则以及方法论。
背后的原则/方法论
* Always drive code from requirement – 代码是从需求一步一步推演出来
* Limit red phase – 尽快让失败的测试用例通过,从而尽量缩短代码RED状态的时间
* Improve design only when code base is safe – 只有在代码安全的状态下,才去优化和改进设计
从本期开始,我们每发布一期新的视频,会根据前一期视频的Feedback做出调整,解释大家遇到的问题以及提升视频的质量,希望大家尽量多的给我们一些本期视频的Feedback。
Daniel Lv, http://ruby-china.org/ 创始人。
Blog: http://lvguoning.com/
Twitter: https://twitter.com/lgn21st
Weibo: http://weibo.com/lgn21st