说实话前面c#实在没怎么学过。这次写起来感觉非常陌生,就连怎么引用名空间都忘记了。在经过恶补后还是慢慢地适应了。

1.项目预计用时:

  构建并写出大概的数据结构,程序框架及模块: 30min

  实现文件夹递归方问方法 :30min

  实现从文件中读出符合要求的单词并统计 :2-3h

  实现对单词的排序 : 1h

  输出:10min

  细节修改及错误排查:2-3h

  程序优化: 1h

2.项目的实际用时:  

  构建并写出大概的数据结构,程序框架及模块: 30min

  实现文件夹递归方问方法 :30min

  实现从文件中读出符合要求的单词并统计 :3h

  实现对单词的排序 : 30min

  输出:5min

  细节修改及错误排查:2h

  程序优化: 1h

3.项目分析和优化

  对于词频统计这项目,若想写好,需要考虑用什么数据结构来储存单词的统计信息。按照project的要求,需要输出的信息为出现的第一字典序单词,以及该单词的词频,而且需要进行相应的排序。最开始是用hashtable,后来发现并不好进行排序,所以最后选择了Directory这个数据结构来保存相应的统计信息,每个单词的全小写可以作为唯一标识的key值来进行索引,而value我是用自己建立的一个数据结构来保存已经出现的第一字典序单词以及词频。这样每次都可以取出所保存的单词与当前遇到的单词进行比较,并将字典序较高者保存下来。

  

4.项目的测试用例:

1).测试最基本的单词分辨:

We love china,and we are Chinese.China is a beautiful country.

abc123 123abc ...Abc123

2)测试两个连续单词分辨;

3)测试两个连续单词分辨;

4)多文件遍历读取测试;

5)空文件读取测试;

6)基本统计数据正确性测试;

7)两个连续单词统计数据正确性测试;

8)三个连续单词统计数据正确性测试;

9)汉字测试;

10)大文件夹统计测试;

--------------------------------------

  

  

  

SoftwareEngineering Individual Project - Word frequency program的更多相关文章

  1. Individual Project - Word frequency program by HJB

    using System;using System.Collections.Generic;using System.IO;using System.Linq;using System.Text;us ...

  2. Limeng:Individual Project: Word frequency program -BUAA Advanced Software Engineering

    11061190-李孟 Implement a console application to tally the frequency of words under a directory (2 mod ...

  3. Individual Project - Word frequency program - Multi Thread And Optimization

    作业说明详见:http://www.cnblogs.com/jiel/p/3978727.html 一.开始写代码前的规划: 1.尝试用C#来写,之前没有学过C#,所以打算先花1天的时间学习C# 2. ...

  4. Individual Project - Word frequency program——12061154Joy

    Description&Requirement: http://www.cnblogs.com/jiel/p/3978727.html 项目时间估计 理解项目要求: 1h 构建项目逻辑: 1h ...

  5. Individual Project - Word frequency program

    1.项目预计用时 -计划学习C#和百度一些用法的时间:5小时 -项目本身打算写两个类,一个是遍历搜索文件夹的,另外一个用来统计单词.计划用时:5小时 2.项目实际用时 学习C#以及正则表达式的用法:3 ...

  6. Record for Individual Project ( Word frequency program )

    1.  预计时间 ● 对问题总体的理解.规划:10 min ● 设计编写程序:5 h ● 调试: 分模块-40 min; 总体-40min ● 测试(性能分析).改进:1 h 2.  实际用时 ● 对 ...

  7. THE First Individual Project - Word frequency program

    第一次写博客,这次也是本学期写到第一个程序. 老师要求网址:http://www.cnblogs.com/jiel/p/3311400.html#2777556 一.项目预计时间 一开始想使用不熟悉的 ...

  8. Individual Project - Word frequency program-11061171-MaoYu

    BUAA Advanced Software Engineering Project:  Individual Project - Word frequency program Ryan Mao (毛 ...

  9. Project: Individual Project - Word frequency program----11061192zmx

    Description & Requirements http://www.cnblogs.com/jiel/p/3311400.html 项目时间估计 理解项目要求: 1小时 构建项目逻辑: ...

随机推荐

  1. Hadoop2.7.6_08_Federation联邦机制

    前言: 本文章是在  Hadoop2.7.6_07_HA高可用  的基础上完成的,所以不清楚的可参见这篇文章. 1. Hadoop的federation机制 文件的元数据是放在namenode上的,只 ...

  2. [原创]Javascript模拟“类”的综合实现方式以及部分细节【截至ES6】

    [原创]Javascript模拟“类”的综合实现方式以及部分细节[截至ES6] 前言   最近几个旧项目里使用的图片编辑插件出现Bug, 经Review 后确定需要在其内外均做些改动,但是头疼的发现部 ...

  3. Opaque data type--不透明类型

    Opaque:对使用者来说,类型结构和机制明晰即为transparent,否则为Opaque In computer science, an opaque data type is a data ty ...

  4. 【微软编程一小时】题目1 : Arithmetic Expression

    时间限制:2000ms 单点时限:200ms 内存限制:256MB 描写叙述 Given N arithmetic expressions, can you tell whose result is ...

  5. CentOS6.9 安装Oracle 11G 版本11.2.0.1.0

    安装实例与数据库 CentOS6.9 安装Oracle 11G 版本11.2.0.1.0 一.检查系统类别. 查看 系统的类别,这里是 64位系统:[root@localhost ~]# uname ...

  6. js之省市区(县)三级联动效果

    省市区(县)三级联动效果,是我们软件开发比较常用的,特别是对一些crm,erp之类,当然也包括其他的后台管理系统,基本都涉及到,今天贴出这个常用的,方便个人复用和大家使用 <!DOCTYPE h ...

  7. strcat、num2str

    文章出处: http://blog.sina.com.cn/s/blog_6fb8aa0d01019id5.html http://wenda.so.com/q/1439143662729624 ht ...

  8. nightwatch-前端自动化测试工具安装

    最近再弄这个前端自动化测试工具,刚开始弄了几天,目前为止遇到很多坑,光是安装就费了不少时间,记录一下,以便自己忘记. 这里是它的官网,目前没找到中文版的官网,全英文,对我这个英语渣来说有点难理解. 一 ...

  9. VS2017 安装visualSVN 6.1.1 for visual studio 2017

    1.官网下载地址:https://www.visualsvn.com/visualsvn/download/ 2.安装

  10. java 容器 List

    1.概念:Java容器类类库的用途是保存对象,容器中不能存储基本数据类型,必须是对象(引用数据类型) 2.为什么需要容器:主要是在以数组作为数据的存储结构中,其长度难以扩充,同时数组中元素类型必须相同 ...