软件工程编程作业1

这个作业属于哪个课程 https://edu.cnblogs.com/campus/zswxy/computer-science-class2-2018/
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/computer-science-class2-2018/homework/11878
这个作业的目标 学习和使用Github
学号 20188449

Git项目地址
https://gitee.com/jay101/project-java.git

1、PSP表格

PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
Planning 计划 30 40
• Estimate • 估计这个任务需要多长时间 1200 1300
• Analysis •需求分析(包括学习新技术) 500 560
• Design Spec •生成设计文档 30 30
• Design Review 设计复审 10 20
• Coding Standard • 代码规范 (为目前的开发制定合适的规范) 20 25
• Design • 具体设计 200 300
• Coding • 具体编码 500 600
• Code Review • 代码复审 40 60
• Test • 测试(自我测试,修改代码,提交修改) 40 40
Reporting 报告 30 30
• Test Repor • 测试报告 30 40
• Size Measurement • 计算工作量 30 40
• Postmortem & Process Improvement Plan • 事后总结, 并提出过程改进计划 40 60
合计 2700 3145

2、解题思路描述
看了作业要求后,我想到的就是就io输入输出流来做这个作业,将文件中的数据读取并存在一个缓冲区中,当数据读完之后,将其转为字符串类型,所以现在字符串的长度就是字符个数,统计单词个数用一个split方法,split() 方法用于把一个字符串分割成字符串数组,字符串数组的长度,就是单词个数,但此方法只适用于英文。得到行数就很容易了,因为是按行读取,所以每加一行,所以相应的参数加一就行了。处理完这些之后,就是要新建一个输出文件,将得到的这些结果存到输出文件中。
3、代码规范的链接:https://gitee.com/jay101/project-java.git
4、各个功能的设计与实现过程
Scanner input = new Scanner(System.in);
System.out.println("请输入文件路径:");
String path = input.next();
int countChar = 0;
int countword = 0;
int countline = 0;
int countnumber=0;
InputStreamReader isr = new InputStreamReader(new FileInputStream(path));
//用来读取文件中的数据
BufferedReader br = new BufferedReader(isr);
用InputStreamReader来读取数据,然后BufferedReader来缓存数据。
countChar += s.length();
字符个数就是字符长度
countword += s.split(" ").length;
split() 方法用于把一个字符串分割成字符串数组,字符串数组的长度,就是单词个数
countline++;
因为是按行读取,所以每次增加一即可计算出行的数目
while(i.hasNext()) {
String key = (String) i.next();
Integer value = (Integer) a.get(key);
System.out.println(key + "出现了" + value +"次");
}
这一部分是输出出现单词数。

5、计算模块部分单元测试展示






(https://img2020.cnblogs.com/blog/1582153/202104/1582153-20210402004111245-1042513452.png)

6、计算模块部分异常处理说明
java自行处理了异常。
7、在附录提供的PSP表格记录下你在程序的各个模块上实际花费的时间
如表所示
8、心路历程与收获
太久没写代码,很多东西都忘了,坎坎坷坷做了这个作业,但是自己并未达到题目要求,后面应该也能改进。虽然做得不好,但是学到的东西才是有的,至少知道开发前的分析,部署对于一个项目多么重要,然后那个PSP表格也对自己有很大的帮助。

原文地址:https://www.cnblogs.com/Jay-h/p/14607810.html