结对项目
2021/10/26 6:11:28
本文主要是介绍结对项目,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
这个作业属于哪个课程 | 软件工程 |
---|---|
这个作业要求在哪里 | 作业要求 |
这个作业的目标 | 学会结对编程,合作编写程序 |
成员:3119005343王宇崇
Github链接
一、PSP2.1表格
PSP2.1 | Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | 30 | 20 |
Estimate | 估计这个任务需要多少时间 | 25 | 10 |
Development | 开发 | 300 | 390 |
Analysis | 需求分析 (包括学习新技术) | 400 | 450 |
Design Spec | 生成设计文档 | 30 | 40 |
Design Review | 设计复审 | 20 | 10 |
Coding Standard | 代码规范 (为目前的开发制定合适的规范) | 20 | 20 |
Design | 具体设计 | 30 | 20 |
Coding | 具体编码 | 500 | 400 |
Code Review | 代码复审 | 30 | 60 |
Test | 测试(自我测试,修改代码,提交修改) | 20 | 20 |
Reporting | 报告 | 20 | 30 |
Test Repor | 测试报告 | ||
Size Measurement | 计算工作量 | 10 | 20 |
Postmortem & Process Improvement Plan | 事后总结, 并提出过程改进计划 | 10 | 20 |
合计 | 1435 | 1510 |
二、模块接口的设计与实现过程
1.程序流程图
2、项目结构
main:项目入口
AnswerCheckUtil类:检验答案是否正确
ExerciseIntegerUtil类:生成整数型题目
ExerciseFractionUtil类:生成分数型题目
FractionOperationUtil类:将分数转换为带分数
ExerciseInsertUtil类:将题目和答案写入文本文件中
三、计算模块接口部分的性能改进
四、部分代码说明
main类
点击查看代码
package main; import java.io.File; import java.io.IOException; import java.util.Scanner; import utils.AnswerCheckUtil; import utils.ExerciseFractionUtil; import utils.ExerciseIntegerUtil; public class main { public static void main(String[] args) { //n表示输入题目数量,x表示输入数字的范围 int in,n,x,over; System.out.println("自动生成小学四则运算题目"); while(true) { Scanner scanner=new Scanner(System.in); System.out.println("选择题目类型:1整数类型,2分数类型"); //判断是否输入为数字 if(!scanner.hasNextInt()) continue; in=scanner.nextInt(); if(in==1) { System.out.println("请输入出题的数量和数字的范围"); n=new Scanner(System.in).nextInt(); x=new Scanner(System.in).nextInt(); ExerciseIntegerUtil.getExerise(n, x); File file=new File("write.txt"); try { if(!file.exists()) file.createNewFile(); } catch (IOException e) { e.printStackTrace(); } System.out.println("请在write.txt中作答,答题完毕请输入1"); over=scanner.nextInt(); //判断是否输入正确 while(over!=1) { System.out.println("输入有误,请重新输入"); over=new Scanner(System.in).nextInt(); } AnswerCheckUtil.checkAnswer(); } else if(in==2) { System.out.println("请输入出题的数量和数字的范围"); n=new Scanner(System.in).nextInt(); x=new Scanner(System.in).nextInt(); ExerciseFractionUtil.getExercise(n, x); File file=new File("write.txt"); try { if(!file.exists()) file.createNewFile(); } catch (IOException e) { e.printStackTrace(); } System.out.println("请在write.txt中作答,答题完毕请输入1"); over=scanner.nextInt(); while(over!=1) { System.out.println("输入有误,请重新输入"); over=new Scanner(System.in).nextInt(); } AnswerCheckUtil.checkAnswer(); } else { System.out.println("你输入有误"); } } } }
五、具体的测试案例
六、项目小结
在这次结对编程中,我没有找到合适的队友,所以打算一个人完成这个项目,先是在网上找了资料学习,但是却没有得到好的思路,还好有和其他已经结了对的同学交流讨论后,我才能确定初步的思路,开始项目。在项目的完成过程中,由于只能由一个人来考虑并完成,所以在碰到许多难题时,便会浪费很长的时间,由此我深刻地体会到这个项目需要结对的重要性。在项目完成之后,对于题目的部分要求也不能很好的满足,例如对于题目的查重功能未能实现,总的来说,这是一次令我印象深刻的编程体验,我觉得对于一个编程项目来说,相比由一个人来完成,还是与人合作,多讨论多交流才能让成果更符合需求,让自己收获更多。
这篇关于结对项目的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-29开源工具的魅力:让文档管理更“聪明”
- 2024-11-29Release-it开发入门教程
- 2024-11-29Rollup 插件入门教程:轻松掌握模块打包
- 2024-11-29从零到一,产品经理如何玩转项目管理和团队协作
- 2024-11-29如何通过精益生产管理工具帮助项目团队实现精准进度控制?
- 2024-11-29低代码应用开发课程:新手入门与基础教程
- 2024-11-29入门指南:全栈低代码开发课程
- 2024-11-29ESLint课程:初学者快速上手指南
- 2024-11-29JWT课程:新手入门教程
- 2024-11-29高效办公秘诀:文档管理中的可视化革命