172328 结对编程练习_四则运算 第一周 阶段总结
172328 结对编程练习_四则运算 第一周 阶段总结
1.项目内容解析
- (1).自动生成不同的题目
- (2).实现中缀表达式→后缀表达式
- (3).支持真分数
- (4).题目去重
- (5).用户选择题目等级和题目数量
- (6).给用户计算正确率
- (7).错误处理测试,非法表达式
- (8).分数化简
2.设计思路内容
- (1).先进行了小组讨论,对于整个题目进行了大体的分析和要点记录。
- (2).确定了几个必有的模块,生成题目类,用户使用类,中缀表达式变后缀表达式类,后缀表达式计算类。
- (3).对于每个模块的实现进行了一定的讨论,大体用那些方法和那种循环进行了确定。
- (4).具体分配任务和实现。
- (5).对于题目等级的主类Arithmetic类,进行了用方法来题目分级,将加减乘除运算符号放在一个随机数组中去产生,让一级题目实现简单的加减法。让二级题目实现乘除法。让三级题目实现加减乘除法。让四级题目实现分数的加减乘除运算,分数是运用我们之前学习的RationalNumber类,为分数的运算做了一个实现约分和真分数的方法。
- (6).对于中缀表达式变成后缀表达式,我们建立一个符号栈和一个空数组,用条件语句进行运算优先级判断然后让数字进数组,符号进栈,有条理的转换出来。
- (7).对于括号的添加,我们小组成员还在进一步讨论中。
3.本周上交成果
(1).UML类图
(2).编程过程中的问题和解决
-
问题1.符号类型在测试输出中一直相同,数字在输出中一直相同。
-
问题1的解决:将符号随机判断放在for循环里面,每次执行循环时都去取新的随机符号。数字同理。
-
问题2.分数不能正常输出。
-
问题2的解决:在循环中没有给实例化数组实例化对象,因此无法调用fraction方法,在加入实例化对象后解决了问题所在。
-
问题3.在将中缀表达式变后缀表达式的过程中,不知道怎样把前一个类中生成的后缀表达式引用进来。
-
问题3的解决:小组同学将其转化成变量引用了进去。
-
问题4:双等号错误,在初次试用面对用户的类时,出现了双等号错误。
-
问题4的解决:在循环外面的result处加等号,才能在末尾输出一个“=”。
-
问题5:输出中一直
问题9
重复,找不到问题所在。
-
问题5的解决:通过我小组成员段志轩的不断努力,该问题得到解决。在主类中设置了一个变量,通过循环里面的自增和自减成功解决了问题序号的美化输出。
-
问题6.在拆分字符的时候,StringToKenizer 比String.toCharArray好,分数不方便分割。
: -
问题6的解决:换成StringToKenizer。
测试部分截图
1.用户体验类截图
2.中缀变后缀截图
3.后缀表达式计算截图
队友互评
[20172301]:这次编程项目的主策划,主引导,主干事。他编写了中缀转后缀类以及后缀计算类。在各个环节也在不停帮助我们小组其他两位同学。
[20172304]:这次编程项目的灵感激发和驱动型人物。在加括号问题上,独特的想到了用ASCII表来判断的方法,现在虽然遇到了瓶颈,但还是在继续解决中。
感悟
本来不应该有自己的评价,但还是写在感悟里面吧。这次结对编程,我只做了最简单的用户使用类,并且在小问题上还有差错,经过屡次修订和改正才正常运行。在主类的编写中,也只参与了一小部分。本来想编写后缀计算的类,但是当时自己无从下手,五一又出去游玩了没有时间去花心思,所以这个步骤也是由队友完成的。理解代码,实现代码,操纵代码都是不同的境界和层次。没有时间的投入,没有足够的思考,我写不出来也很正常。后期会在编程项目中多下点功夫。
PSP时间统计
PSP2.1 | Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | 60 | 65 |
Estimate | 估计这个任务需要多少时间 | 3 | 2 |
Development | 开发 | 2000 | 3000 |
Analysis | 需求分析 (包括学习新技术) | 350 | 300 |
Coding Standard | 代码规范 (为目前的开发制定合适的规范) | 60 | 10 |
Design UML | 设计项目UML类图 | 60 | 60 |
Coding | 具体编码 | 1500 | 2000 |
Code Review | 代码复审 | 30 | 30 |
Test | 测试(自我测试,修改代码,提交修改) | 300 | 300 |
Size Measurement | 计算工作量(实际时间 ) | 2 | 2 |
Postmortem & Process Improvement Plan | 事后总结, 并提出过程改进计划 | 30 | 10 |
合计 | 4395 | 5229 |