一.简介

本次博客主要介绍实现结对编程项目,我和毛陆羽同学合作完成这次项目,我负责短信发送,UI设计等功能,毛陆羽同学主要负责出题解题,设置选项等功能。

我们两个使用的是c++编程,然后选择了Qt来进行界面的显示。

二.结对编程要求

  1、所有功能通过图形化界面操作,可以是桌面应用,可以是网站(编程语言和技术不限); 

  2、用户注册功能。用户提供手机号码,点击注册将收到一个注册码,用户可使用该注册码完成注册; 

  3、用户完成注册后,界面提示设置密码,用户输入两次密码匹配后设置密码成功。密码6-10位,必须含大小写字母和数字。用户在登录状态下可修改密码,输入正确的原密码,再输入两次相同的新密码后修改密码成功; 

  4、密码设置成功后,跳转到选择界面,界面显示小学、初中和高中三个选项,用户点击其中之一后,提示用户输入需要生成的题目数量; 

  5、用户输入题目数量后,生成一张试卷(同一张卷子不能有相同题目,题目全部为选择题),界面显示第一题的题干和四个选项,用户选择四个选项中的一个后提交,界面显示第二题,…,直至最后一题; 

  6、最后一题提交后,界面显示分数,分数根据答对的百分比计算; 

  7、用户在分数界面可选择退出或继续做题。

三.项目实现以及分析:

在使用Qt时才发现Qt是真的很方便,许多功能实现也非常简单好用。

1.登录注册界面:

结对编程-带UI的中小学生出题程序_修改密码

结对编程-带UI的中小学生出题程序_界面显示_02

 

 在登录界面输入用户名及密码,在用户文档中查找对应的数据进行验证。初始登录时需要先进行注册。密码要求必须6包含字母大小写及数字。同时电话要11位电话号码,点击获取验证码后会给输入的手机号发送四位的验证码。

2.出题界面

结对编程-带UI的中小学生出题程序_验证码_03

 

 出题界面包含了输入的题目数量,要求题目数量在10-30之间,并且支持修改密码。

3.做题界面

结对编程-带UI的中小学生出题程序_好用_04

 

 在做题界面有四个选项,选完之后点击下一题即可继续做题。

4.公布成绩

结对编程-带UI的中小学生出题程序_界面显示_05

 

 在所有题目做完之后,系统会根据正确的题目数量算出对应的百分制的分数。

四.结对编程的教训

由于我们两个都是用C++写的个人项目,所以结对项目也是继续用C++实现,一开始我们被算代数式难住了,后来费了好大力气才解决算式问题,听说隔壁Java有函数可以直接算出结果,顿时心态有点小崩,后来在短信验证的时候发现支持C++的验证码发送不是很多,然后使用了一个网站的发现接口总弄不好发不了短信,后来换了现在使用的这个才得以解决。

五.总结

我从这次结对编程的过程中获益匪浅,之前很少有过做项目的经验,像这样一点点构建、最后成品出来的时候满足感真的非常强烈。并且学会使用Qt这个软件,感觉真的非常好用。同时也不得不说毛陆羽同学真的很厉害,中间有许多难住我们的算代数式等问题,他都巧妙的解决了,改bug的能力也很强,也再次感谢他的辛苦劳动,从他那里我也学到了很多解决问题的方法。