第一次个人编程作业
第一次个人编程作业
| 这个作业属于哪个课程 |< 软件工程> |
|:--|:--|:--|:--|
| 这个作业要求在哪里 | <作业要求> |
| 这个作业的目标 | 锻炼独自完成一个项目的能力,规范代码的格式,各种代码的测试 |
github:
我的github 欢迎来查看,哈哈哈
PSP表格
PSP2.1 | Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | 20 | 25 |
Estimate | 估计这个任务需要多少时间 | 10 | 15 |
Development | 开发 | 180 | 200 |
Analysis | 需求分析 (包括学习新技术) | 20 | 40 |
Design Spec | 生成设计文档 | 10 | 20 |
Design Review | 设计复审 | 10 | 15 |
Coding Standard | · 代码规范 (为目前的开发制定合适的规范) | 20 | 25 |
Design | 具体设计 | 30 | 35 |
Coding | 具体编码 | 120 | 180 |
Code Review | 代码复审 | 40 | 30 |
Test | 测试(自我测试,修改代码,提交修改 | 20 | 25 |
Reporting | 报告 | 60 | 60 |
Test Repor | 测试报告 | 15 | 20 |
Size Measurement | 计算工作量 | 10 | 10 |
Postmortem & Process Improvement Plan | 事后总结, 并提出过程改进计划 | 10 | 10 |
合计 | 300 | 390 |
机算模块接口的设计与实现过程
流程
1.通过传递命令行参数的方式提供文件的位置,从指定的位置读取文件,并向指定的文件输出答案。
2.读取文本内容,过滤符号。
3.通过算法算出不同文本之间的相似度。
4.在指定的文件中输出相似度。
相似度机算公式
类
核心算法
通过余弦定理进行运算,得出其相似度。
类
求相似度的类
余弦定理算法的类
文本内容联系的类
计算距离的类
程序运算结果
算法关键:
读写文本的内容以及过滤符号
余弦定理求相似度
将运算结果在指定的路径中显示出来
性能分析
测试编辑距离算法模块:
单元测试:
测试结果:
心得体会:
这次作业让我学会了如何独自完成一个简单的项目,在这过程中,遇到很多不会的,尤其是算法,都只能靠自己上网寻找相关的原理,通过网上的流程图,才慢慢摸索出思路。最后还是,good good study,day day up !还是要努力学习java,毕竟我们是这个专业的。