软件工程实践第二次作业——个人实战
| 这个作业属于哪个课程 | 2023福州大学-软件工程实践-W班 |
|---|---|
| 这个作业要求在哪里 | 软件工程实践寒假作业 |
| 这个作业的目标 | 1.爬取澳大利亚网球公开赛的信息 2.实现一个控制台程序能够处理不同的指令完成对信息的统计处理 |
| 其他参考文献 | ... |
目录
- 1.Gitcode项目地址
- 2.PSP表格
- 3.解题思路描述
- (1).爬取澳大利亚网球公开赛官网相关数据
- step1
- step2
- step3
- (2).分析Json数据格式,完善设计思路
- step1
- step2
- step3
- 4.设计与实现过程
- 5.程序性能改进
- 6.单元测试
- 7.心得体会
1.Gitcode项目地址
2.PSP表格
| PSP | Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分钟) |
|---|---|---|---|
| Planning | 计划 | 30 | 40 |
| Estimate | 估计这个任务需要多少时间 | 15 | 40 |
| Development | 开发 | 450 | 550 |
| Analysis | 需求分析(包括学习新技术) | 50 | 70 |
| Design Spec | 生成设计文档 | 40 | 50 |
| Design Review | 设计复审 | 20 | 15 |
| Coding Standard | 代码规范 (为目前的开发制定合适的规范) | 20 | 35 |
| Design | 具体设计 | 400 | 600 |
| Coding | 具体编码 | 40 | 30 |
| Code Review | 代码复审 | 20 | 15 |
| Test | 测试(自我测试,修改代码,提交修改) | 30 | 100 |
| Reporting | 报告 | 30 | 35 |
| Test Repor | 测试报告 | 20 | 20 |
| Size Measurement | 计算工作量 | 20 | 30 |
| Postmortem & Process Improvement Plan | 事后总结, 并提出过程改进计划 | 10 | 10 |
| 合计 | 1195 | 1640 |
3.解题思路描述
(1).爬取澳大利亚网球公开赛官网相关数据
step1
进入官网
step2
按键盘F12进入控制台模式,依次点击Network,Fetch/XHR,result的选项。然后可以获得想要的Json数据。
step3
对爬取到的数据进行在线解析,需要准备相应的解析工具。整理过后的代码会变得规整很多。再将其以Json形式保存,至此Json数据就爬取成功。
(2).分析Json数据格式,完善设计思路
step1
理解Json文件中的数据形式,Json中有非常多的对象,要将这些对象的关系理清楚。理清数据之间的相互关系,为设计代码结构思路提供便捷。
step2
将数据处理要求分成数个部分,将复杂的程序转化成如读取、计算、输出等小功能。以此分别实现其功能,使代码实现变得简单化、具体化。
step3
将功能进行整合,形成一个整体的模块。进而使其放到不同的环境中也能顺利运行
4.设计与实现过程
1.首先设计了主函数,其负责input文本的读取和工具函数的调用。

2.根据分成Json数据解析和数据计算反馈,为此设计了数个工具类。

5.程序性能改进
读取文本数据时,原先的设想是读取文件流在进行拆解,后来为了效率和便捷性使用了stringBuffer来减少重复操作。并及时设置了文件的读写的关闭,以减少资源的使用。
6.单元测试
当读入符合格式的命令时正常显示:

当读入不符合格式的命令时会有相应反馈:

7.心得体会
自己在代码规范方面有着很多不足,经常因为自己的代码不规范导致旁人阅读困难,因此以后会严格按照这次编写的代码规范自我约束。
在遇到自己无法解决的问题时,可以尝试将困难的问题简单化,并且在没有办法的时候也可以向其他同学寻求帮助,相互交流能更有效率的解决问题。
在此次作业中,爬取Json数据,对psp表格有了一定的了解。
...全文


