201671010411+巩定定+词频统计软件项目报告

课程名 软件工程
实验二 词频统计软件项目报告
词频(TF) 是一个词语出现的次数除以该文件的总词语数。
实验目的 (1)掌握软件项目我的开发流程。
(2)掌握Github上发布软件项目的操做方法。
环境配置 使用的JDK版本为 jdk8u161,windows版下载连接:
http://download.oracle.com/otn-pub/java/jdk/8u161-b12/2f38c3b165be4555a1fa6e98c45e0808/jdk-8u161-windows-x64.exe

•使用的JRE版本为jre8u161,windows版下载连接:
http://download.oracle.com/otn-pub/java/jdk/8u161-b12/2f38c3b165be4555a1fa6e98c45e0808/jre-8u161-windows-x64.exe
实验要求 软件开发要求:
1.程序可读入任意英文文本文件,该文件中英文词数大于等于1个。
2.程序须要很壮健,能读取容纳英文原版《哈利波特》10万词以上的文章。
3.指定单词词频统计功能:用户可输入从该文本中想要查找词频的一个或任意多个英文单词,运行程序的统计功能可显示对应单词
                                 &nbsp在文本中出现的次数和柱状图。
4.高频词统计功能:用户从键盘输入高频词输出的个数k,运行程序统计功能,可按文本中词频数降序显示前k个单词的词频及单词。
5.统计该文本全部单词数量及词频数,并能将单词及词频数按字典顺序输出到文件result.txt。



实验内容:

java

需求分析
1.使用java语言,对存放在java中的W.txt中的全部单词进行统计。
2.将指定单词统计的结果按照要求显示(按照柱形图的形式显示)。
3.高频单词的统计功能,输入整数K,按照单词的词频数显示前K个数以及单词。
4.将单词及词频数按字典顺序输出到文件result.txt.要求代码健壮,代码简介,代码质量高。

功能设计
该Java程序实现的功能是进行单词的词频统计,能读取容纳英文原版《哈利波特》10万词以上的文章。进行单词的词频统计,还要绘制柱状图,并实现指定单词词频统计、高频词汇的统计该文本全部单词的数量和对应的词频数......
测试运行




代码
//读入《哈利波特》
String line "src/word.txt";
File file = new File(line);
InputStreamReader is = new InputStreamReader(new FileInputStream(file), "utf-8");
BufferedReader buff = new BufferedReader(is);
List list = new ArrayList ();//list中只存放纯单词文本
String readLine = null;//单词列表初始为空
while((readLine = buff.readLine())!=null){
String[] WordsArr = readLine.split("[^a-zA-z]");
for(String word:WordsArr){
if(word.length()!=0){
list.add(word);//将截取后的纯单词放入list
}
}
}
buff.close();
WordsCount = new TreeMap<String,Integer>();//键值对存储单词信息,String为单词,Integer为单词出现次数
//词频统计(查询单次出现次数,并循环进行累加统计)
for(String lists:list){
if(WordsCount.get(lists)!=null){
WordsCount.put(lists, WordsCount.get(lists)+1);//单次出现频次累加
}else{
WordsCount.put(lists, 1);
}
}



实验总结:
在这次实验做业中,发现了不少关于本身在Java编码方面的不足之处,在选择函数的时候会选择错误的时候,最后利用网络资源和书籍解决本身的疑问点。
git

展现PSP:
github



PSP2.1 任务内容 计划共完成需求(min) 实际完成需求的时间(min)
PLaning 计划 200 180
. Estimate . 估计这个任务需求多少时间,并规划大体工做步骤 140 150
Development 开发 150 140
.. Analysis 需求分析(包括学习新技术) 60 50
. Design Spec . 生成设计文档 60 55
. Design Review . 设计复审(和同事审核设计文档) 100 80
. Coding Standard 代码规范(为目前的开发制定合适的规范 180 150
. Designtd> 具体设计 120 100
. Coding 具体编码 180 170
. Code Review .代码复审 9 9
. Test . 测试(自我测试,修改代码,提交修改) 60 55
Reporting 报告 30 25
.. Test Report . 测试报告 60 40
. Size Measurement 计算工做量 60 50
. Postmortem&Process Improvement .过后总结,并提出过程改进计划 20 20

完整版代码github帐号: https://github.com/Gdd2019/WT
相关文章
相关标签/搜索