个人项目总结 by 卢祎
个人项目的题目就是写一个统计词频的小程序,不用考虑太复杂的词的定义,只要是非字母的字符就当作是分隔符。
比较棘手的是如何利用给定的字符串,去搜索目录下的所有文件。这个用C++写还得调用Windows API,考虑到开发时间可能大部分纠结在非重点问题上,所以我决定用C#写。
刚开始是用的C#的split函数,写起来十分简单,但是跑起来没想到竟然是整个程序的瓶颈所在,之前以为会是IO和Dictionary呢。而且需要一提的是,char.ToLower()的速度也是非常的慢,最后连转大小写都是自己写的。
改为自己写的split函数后,基本达到了秋丰老师的时间要求。之前还考虑过Trie树去代替Dictionary,实现后发现效果不是很明显,所以最后交上去的作业中只使用了Dictionary
下面是项目做之前对每个部分的时间估计。
|
Sub Procedure |
Estimated Time Cost |
Time Cost |
|
Needs analysis & understanding |
30 min |
20 min |
|
Module & Interface design |
60 min |
30 min |
|
Coding |
120 min |
120 min |
|
Testing |
120 min |
90 min |
由于老师有提供数据,所以花在测试上的时间比预想的要少,其余部分基本上都在预期之内吧。希望以后的Team Project也能正确的估计出需要投入的精力。

浙公网安备 33010602011771号