第三次作业

合作者:201631062226,201631062125
代码地址
本次作业地址

一、实现的功能

-统计字符数

  • 统计单词数
  • 统计文本行
    -统计注释行、代码行、以及空行
  • 递归处理目录下符合条件的文件
  • 停用词表

二、代码互审

-变量命名不规范
-注释不足
-可读性较差
我们使用的是C#语言,针对这种情况,根据C#编码规范做了相应改进。

三、扩展功能

 if (lstChar.Count > 0)  //如果文件不为空,则行数+1
			{				
				lineNumber++;
			}
			sr.Close();
			fs.Close();
			FileStream fd = new FileStream(filename, FileMode.Open);
			StreamReader sb = new StreamReader(fd, encode);
			while ((lineString = sb.ReadLine())!=null)
			{
			    buffer = lineString.Split(new char[]{' ',','});
				for (int j = 0; j < buffer.Length; j++)
				{
					if (isStop) //如果启用禁词表,则比对单词
					{
						FileStream fb = new FileStream(outstop, FileMode.Open);
						StreamReader sd = new StreamReader(fb, encode);
						buffer1 = sd.ReadToEnd().Split(new char[] { ' ' });
						for (int i = 0; i < buffer1.Length; i++)
						{
							if (buffer1[i] == buffer[i])
								mark = true;
					    }
					}
					if(mark == false)
					{
                         wordNumber++;//由空格和“,”分开的算单词
					}
					
				}
				
				lineString = lineString.Trim();
				
				//每行有“//”则为注释行
				if(lineString.Contains("//"))
				{
					noteNumber++;
				}
				//如果此行为空或者空格则为空行
				else if(String.IsNullOrWhiteSpace(lineString)|| lineString == "{" || lineString == "}")
			    {
					spaceNumber++;
				}
				//非注释行和空行,则为代码行
				else
				{
					codeNumber++;
				}
			}		
			sb.Close();
			fd.Close();
		}
	}

四、单元测试



五、静态测试

六、总结

通过该项目,让我们完整具体的去体验了一次项目开发与测试过程。在项目的实现过程中,还是会遇到一些困难,不断去改进和完善,体会结对编程的方便。

posted @ 2018-10-21 20:21  吴天ss  阅读(116)  评论(0编辑  收藏  举报