目录

额外的需求

以上的实现中,如果一个密码是1234,而猜测的答案是1155,系统会反馈+-。这里是值得讨论的,事实上,应该反馈+,而第二个重复的1应该被忽略掉。又如,密码是1134,而猜测的答案是1115,系统应该反馈的是++,多余的第三个1应该被忽略掉。

我们可以把这个需求增加到cucumber功能描述中,然后开始新的迭代。这部分在原文上也有很多具体的讨论,但我仍然建议大家自己亲手试一试,这是学习BDD整体解决方案时精挑细选的案例,值得多花点心思去尝试。

收尾

我们拥有了一个Game类,完成了核心算法,但应用还扔在那里,没有完全实现。我们需要添加新的Cucumber行为和RSpec测试,来完成应用的交互部分。

原文未提供,也提供给爱好者自己动手试试看。