前前后后做了15个小时PASSED ALL 30 TESTING TRIALS
的那一刻
概述
这个实验要求实现经典论文MapReduce的模型
实现过程流水账
先读论文花了3h左右
然后开始实现if-else
第二次写代码之前switch-case
今天是第三次碰这个东西
第一个教训
把语言学明白 : 勤编译勤测试 , 。
我查看输出文件的前三行
第二个教训
测试要认真严谨 : 。
然后又改了若干年
做的不错的地方
- 画DFA
- 头脑不清楚的时候出门转转
可以花掉长达20分钟的时间, 但是回来之后你就复活了, !
想要做得更好的地方
- 阶段性编译
测试、 例如我的DFA设计好了。 这时候就可以测试下转移有没有问题, 然后再在转移前后加功能, 。 - 有设计测试点的能力
对于这个实验。 我是用户, 而且一定程度上可以说是赶时间, 所以用老师的脚本来测试, 调试没有什么错、 但是一旦成为真正意义上的开发者。 bug都要自己找, 不提开源社区之类( ) 需要有能力设计若干测试来检验自己的代码在各方面的正确性/性能, 这确实需要写一些。 没用的“ 代码” 但是它们通常很简单, 而且很有用, 如算法竞赛里的对拍程序和暴力程序( ) 例如。 我尽管知道各个操作的时间/空间复杂度, 但还是不知道我这个实现并发性如何, 究竟有多少CPU时间是overhead, 。 - 证明我的DFA的正确性
- Challenge
- 阅读老师的测试脚本
学习写脚本,