代码互审
我复审的代码是来自于12061174 李靖的单词搜索代码。
代码能正确实现要求的功能,即从指定的目录下读取所有指定类型的文本文档,统计其中符合规定的“单词”的词频并输出到文本文件中
但是,代码还是存在着一些不足。
1.变量的命名不规范,可读性很差。比如main函数中,使用了d,m之类的名字来命名字符串,读的人完全不知道什么意思,以后自己再回头看代码也许也会读不懂。建议将这个变量表达的意思用变量名体现出来,让人易于理解程序。
2.代码比较冗余,代码的各个部分的封闭性独立性都比较差。感觉上没有做到面向对象,而是面向过程的程序,由于代码很长,可读性就比较差。建议写成面向对象的代码,各个部分有明确的输入参数和指定功能,各自独立,这样子对功能扩展,debug,增强代码可读性都有好处。
3.本程序是用c++写的,对于这种需要做比较多的文件操作的程序来说,我觉得使用c#更好一些,因为c#集成了很多文件操作的功能,比如直接循环读取一个目录和其所有子目录下所有文件路径的函数,本程序用了很大功夫来完成这一功能,而c#只要一个函数即可,而且使用c#也能更好地做到面向对象。
优点:程序对于文本内容的处理使用了正则表达式,清晰明确。整个程序的思路也比较清晰。