类似于TDD是否意味着不考虑类设计?,我在思考传统“设计”阶段在TDD中的位置时遇到了困难。
根据保龄球游戏卡塔(“对话”版本,链接我暂时记不起来了),TDD似乎忽略了早期做出的设计决策(放弃帧对象、投掷对象等)。我能看出,在这个例子中,跟随测试并忽略您最初的设计思想是个好主意,但在更大的项目或希望留下扩展/定制空间的项目中,是否把您没有测试或立即不需要的东西插入其中会更好一些,以避免以后耗费时间重写?
简而言之——在进行TDD时,过多的设计是多少,我在编写测试和代码以通过它们(忽略我的设计只关注通过测试)时应该遵循多少设计?
还是说我在担心什么,如果您被逼入了一个死角,那么仅仅为了跟随测试而编写的代码是不难重写或重构的(在实践中)? 或者,我可能忽略了重点,即当我来测试新的功能部分时,我应该期待重写代码的部分吗?