给结对伙伴叶露婷的代码复审:

1.变量命名存在些许问题,尽量不要使用拼音,如果需要按照中文意思命名可以采用英语。

1 public void dictionarystore()
2 {
3 String temp;
4 count jishu;
5 
6 foreach (Object o in str)
7 {
8 temp = o.ToString().ToLower();
9 if (table.ContainsKey(temp))
10 {
11 jishu = table[temp];
12 jishu.setnum();
13 if (jishu.getdanci().CompareTo(o.ToString()) < 0)
14 {
15 jishu.setdanci(o.ToString());
16 }
17 }
18 else
19 {
20 jishu = new count(o.ToString(), 1);
21 table.Add(temp, jishu);
22 }
23 }
24 
25 
26 }
27 }

 


2.使用了过多的类,但是这些类的存在没有很大的实际意义,本来只有两百行的代码分成这么多个类有些繁琐,可以将一些功能比较薄弱的类归并到其他的类中实现其功能。比如下面这代码的功能是获取文件中的内容,完全可以将内容的获取和分割放在一个类中,这应该是属于同一种处理,也是同一个对象应该提供的功能。不要将一些杂乱的功能归为一个类。面向对象不是简单的分割,而是有原因的。合理确定对象,这样在以后写大型程序的时候能够更易看懂更好管理。

1 public void dirscanner(String dir)
2 {
3 String[] allfile = null;
4 String[] alldirectory = null;
5 if (!Directory.Exists(dir) && !File.Exists(dir))
6 {
7 Console.WriteLine("该路径无效");
8 Environment.Exit(0);
9 }
10 else if (Directory.Exists(dir))
11 {
12 allfile = Directory.GetFiles(dir);
13 alldirectory = Directory.GetDirectories(dir);
14 for (int i = 0; i < allfile.Length; i++)
15 {
16 dirscanner(allfile[i]);
17 }
18 for (int i = 0; i < alldirectory.Length; i++)
19 {
20 dirscanner(alldirectory[i]);
21 }
22 }
23 
24 String houzhui = dir.Substring(dir.LastIndexOf(".") + 1);
25 if (houzhui == "txt" || houzhui == "cpp" || houzhui == "h" || houzhui == "cs")
26 {
27 String text = File.ReadAllText(dir);
28 str.Append('-' + text);
29 }
30 }
31 }

 


3.这里的dictionary的值对的值得类型为一个自己定义的类,有些浪费空间。可以考虑一下还有没有其他的方式,能够同时兼顾时间和空间。

1 public void dictionarystore()
2 {
3 String temp;
4 count jishu;
5 
6 foreach (Object o in str)
7 {
8 temp = o.ToString().ToLower();
9 if (table.ContainsKey(temp))
10 {
11 jishu = table[temp];
12 jishu.setnum();
13 if (jishu.getdanci().CompareTo(o.ToString()) < 0)
14 {
15 jishu.setdanci(o.ToString());
16 }
17 }
18 else
19 {
20 jishu = new count(o.ToString(), 1);
21 table.Add(temp, jishu);
22 }
23 }

 


4.时间效率方面还行,使用了dictionary很好的改善了时间效率,对文件内容的处理使用了正则表达式和spilt分割,都很得当。功能的实现也很独立,对变量的命名总体上还是合适的,代码比较容易读懂。

posted on 2014-10-23 23:29  Vincent~  阅读(173)  评论(0编辑  收藏  举报