博文简要信息表:
项目 |
这个作业属于哪个课程 |
这个作业的要求在哪里 |
我在这个课程的目标是? |
本次作业在哪个具体方面帮助我们实现目标 |
任务一:给出所点评作业的博客、github链接地址,点评内容和点评心得
我的结对小伙伴的作业博客
TA的github地址
点评内容和点评心得:
-
点评内容
-
点评心得:通过互相阅读博客,发现自己的不足,有助于提高自己的能力。
任务二:
我们的源码
一.需求分析.
-
实验2要求的功能实验二功能;
-
单词频数可视化柱状图:
-
统计该文本行数及字符数;
-
各种统计功能均提供计时功能,显示程序统计所消耗时间(单位:ms);
-
可处理任意用户导入的任意英文文本;
-
人机交互界面要求GUI界面(WEB页面、APP页面都可);
-
附加分功能:统计文本中除冠词、代词、介词之外的高频词;
-
附加分功能:统计前10个两个单词组成的词组频率。
二.软件设计:使用类图.
三.核心功能代码展示:展示核心功能代码.
-
代码片段:
//高频词的统计 整数k
public ArrayList gaopin(TreeMap<String,Integer> tm,int k){
ArrayList<Map.Entry<String,Integer>> list = new ArrayList<Map.Entry<String,Integer>>(tm.entrySet());
Collections.sort(list,new Comparator<Map.Entry<String,Integer>>(){
public int compare(Entry<String, Integer> o1, Entry<String, Integer> o2) {
return o2.getValue() - o1.getValue();
}
});
//输出前k个数
for(int i = 0; i<k; i++){
System.out.println(list.get(i).getKey()+ ": " +list.get(i).getValue());
}
return list;
}
//统计文本行数与字符
public List statistics(String fileName) throws IOException{
String line = fileName;
System.out.println(fileName);
File file = new File(line);
InputStreamReader isr = new InputStreamReader(new FileInputStream(file), "utf-8");
BufferedReader br = new BufferedReader(isr);
int charNum= 0 ;//字符数
int wordsNum= 0;//数字数
int lineNum = 0;//行数
//以流的形式读入文件
while( br.read()!= -1){
String s = br.readLine();
charNum+=s.length();
wordsNum +=s.split(" ").length;
lineNum ++;
}
isr.close();//关闭
List list=new ArrayList();
list.add(charNum);
list.add(wordsNum);
list.add(lineNum);
// System.out.println("字符数:"+charNum+"
单词数:"+wordsNum+"
行数:"+lineNum);
return list;
}}
四.程序运行:程序运行时每个功能界面截图.
1.JSP主页面
2.浏览文件
3.统计完成
4.柱状图显示
5.relust.txt中存放显示
五. 描述结对的过程,提供两人在讨论、细化和编程时的结对照片(非摆拍).
在结对过程中,我们两人本身并不熟悉彼此,从一开始对结对作业进行讨论,然后分配任务,由于我们两人并不属于同一宿舍,我们作业的完成尽量在有空的时候两人见面进行讨论。由于是第一次进行结对编程,缺乏经验,开始的效率并不是很高,我们也经常会出现进度不同步进度滞后的情况。在经历了坎坷和磨合的过程之后,我们两人的配合效率也得到了提高,双方互相反馈各自主要负责部分的问题,进行修改,最终也是顺利完成了结对项目。总体来说这次结对过程给了我很新鲜的体验,第一次与比较陌生的人配合一起完成一个项目,两人通过不断地磨合最终也算是磕磕绊绊地完成了这次作业,对我来说算是一次丰富的体验。
六. 提供此次结对作业的PSP.
PSP表格
PSP2.1 | 任务内容 | 计划共完成需要的时间(min) |
Planning | 计划 | 15 |
Estimate | 估计这个任务需要多少时间 | 20 |
Development | 开发 | 200 |
Analysis | 需求分析(包括学习新技术) | 10 |
Design Spec | 生成设计文档 | 30 |
Design Review | 设计复审(和同事审核设计文档) | 8 |
Coding Standard | 代码规范(为目前的开发制定合适的规范) | 15 |
Design | 具体设计 | 20 |
Coding | 具体编码 | 180 |
Code Review | 代码复审 | 20 |
Test | 测试(自我测试,修改代码,提交修改) | 10 |
Reporting | 报告 | 30 |
Test Report | 测试报告 | 30 |
Size Measurement | 计算工作量 | 5 |
Postmortem & Process Improvement Plan | 事后总结,并提出过程改进计划 | 10 |