结对编程成员
-黎育权 1500802033 http://www.cnblogs.com/liyuquan/
-李凡 1500802031 http://www.cnblogs.com/lifan323/
Coding地址
功能说明及软件截图:
GUI
使用Qt集成开发环境进行设计,UI主要由菜单栏,32个Label,10个LineEdit,5个PushButton,一个lcdNumber构成,Label用于刷新和显示信息,LineEdit用于输入答案,PushButton用于操作,lcdNumber用于计时。
加减乘除运算
formula类中定义了=-*/四则运算,使用getFormula()可获取随机计算式,结果存储在类中的结果变量中,使用getResult()函数可获取结果字符串
真分数
fraction类中定义了真分数的数据以及真分数的各种操作
退格功能
用户可在LineEdit中自由编辑,退格操作
判断对错
调用getResult()将返回值与之前存储的answer进行比对,正确则显示true,错误显示false,并给出正确答案
清屏
点击“从新出题”按钮,便可将之前的信息清空,并从新出题
选做-倒计时功能
主窗口的构造函数中开始一个计时器,并写了主窗口的计时器事件处理函数,每过去一秒LCD上的数字-1,至0的时候停止计时器,并使得LineEdit不可编辑,然后自动提交试卷进行题目判断
选做-正确率
定义变量int answerCcrrect、answerWrong,用于存储用户正确和错误的答案float accuracy用于存储正确率,并一直显示在GUI左上方,每次提交答卷都会从新计算正确率并从新显示
以下是截图:
进入软件界面:
点击开始做题按钮:
点击提交答卷按钮:
从新出题并从新开始计时:
结对编程人员照片:
Coding签入记录
心得体会
这是笔者第一次结对编程
过程中遇到很多困难,两个人总是在简单的地方发生争执,笔者想这么做完美一点,队友喜欢另一种方式。
比如在公式的周围边框上,笔者认为不用边框能显得界面十分简洁,队友觉得设置一个边框会让用户更加简单的看到界面,清楚界面,最终发生争执完成之后,他选择了妥协。
在后来的其他争执上,两人不断的磨合,开始知道为他人着想,不再只坚持自己的意见。
此外,在这次作业中,笔者也发现自己以前编程存在的许多问题,并一一向队友请教并得到解决。
这次结对编程对我来说感受颇多。
我知道了去从别人的角度考虑别人的感受,开始学会妥协,学会与他人更好的沟通。
以前编程的习惯问题也在这次编程中得到改进,自己代码的可读性得到一定的提高。
希望在以后的团队合作中能够进一步学习。