这个作业属于那个课程 | 软件工程 |
---|---|
这个作业要求在哪里 | 202103226-1 编程作业 |
这个作业的目标 | 学习使用码云 |
学号 | 20188453 |
目录
1. 项目地址
2. psp表格
PSP2.1 | Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | 5 | 10 |
Estimate | 估计这个需要多少时间 | 400 | 600 |
Development | 开发 | 150 | 300 |
Analysis | 需求分析 (包括学习新技术) | 5 | 10 |
Design Spec | 生成设计文档 | 10 | 15 |
Design Review | 设计复审 | 10 | 15 |
Coding Standard | 代码规范 (为目前的开发制定合适的规范) | 10 | 20 |
Design | 具体设计 | 50 | 90 |
Coding | 具体编码 | 200 | 300 |
Code Review | 代码复审 | 50 | 100 |
Test | 测试(自我测试,修改代码,提交修改) | 30 | 50 |
Reporting | 报告 | 60 | 100 |
Test Repor | 测试报告 | 50 | 100 |
Size Measurement | 计算工作量 | 30 | 60 |
Postmortem & Process Improvement Plan | 事后总结, 并提出过程改进计划 | 15 | 30 |
合计 | 1075 | 1550 |
3.解题思路
需求:
1.输入输入文件和输出文件的文件名
2.对文件进行读取,统计其中的字符数、单词总数、有效行数,单词的出现次数,且只输出频率最高的十个。、
设计:
首先使用BufferedReader类读取文件,在使用其中的readline()方法进行行数的分割,同时计算行数,使用split()方法将单词分割。
4. 代码规范
5. 计算机的接口设计与实现过程
读取文件
BufferedReader br = new BufferedReader(new FileReader(file)); // 读文件
计算和单词分割
while ((readLine = br.readLine()) != null) {
characters += readLine.length();
String[] wordsArr = readLine.split("[^a-zA-Z]");
lines++;
for (int i = 0; i < wordsArr.length; i++) // 存入List
{
String word = wordsArr[i];
if (word.length() != 0) {
lists.add(word);
}
}
}
6. 性能改进
能力有限,没找到改进方法
7. 测试
8.心路历程
总而言之,这次编程作业让我学习了一些新的工具:git,码云;以及eclipse与码云直接的联系。