很久没有写总结了,因为一直忙于充电,周五和胡老师聊完之后有些感触。
胡老师说大多数人不用测试驱动开发的原因是不会写,我也是不会写,也不了解为什么可以先些测试,知道周五胡老师演示了一波。我的体验是:
先写测试,必须先定义好你的输入输出。
按照你的输入输出,尽可能简化你的代码实现。
优势是不言而喻的,但是我有一个疑问,因为很明显这样的测试驱动下的开发类似于"需要的时候建造",尽可能减少不必要的环节,这也是人类社会发展最有效的方式,需要时创造,但缺少一个整体的架构难道不会让后期的代码变得杂乱吗?
"需要时建造 --- 开始前规划" 不同于根源回溯的蛋生鸡,鸡生蛋的问题,这是一个向后推进的"蛋 鸡"问题,是后者的演进推进的前者,还是前者的演进推进了后者。
既然线性的推进方法得不出结论,能不能换成树形的?自上而下,由规划开始,到一定的节点开始测试驱动?但是节点在哪里?或许这只能从大量实践中总结吧,毕竟这不好抽象成数学问题来优化。期待以后的工作中慢慢体会吧。