一.简介
本次博客主要介绍实现结对编程项目,我和毛陆羽同学合作完成这次项目,我负责短信发送,UI设计等功能,毛陆羽同学主要负责出题解题,设置选项等功能。
我们两个使用的是c++编程,然后选择了Qt来进行界面的显示。
二.结对编程要求
1、所有功能通过图形化界面操作,可以是桌面应用,可以是网站(编程语言和技术不限);
2、用户注册功能。用户提供手机号码,点击注册将收到一个注册码,用户可使用该注册码完成注册;
3、用户完成注册后,界面提示设置密码,用户输入两次密码匹配后设置密码成功。密码6-10位,必须含大小写字母和数字。用户在登录状态下可修改密码,输入正确的原密码,再输入两次相同的新密码后修改密码成功;
4、密码设置成功后,跳转到选择界面,界面显示小学、初中和高中三个选项,用户点击其中之一后,提示用户输入需要生成的题目数量;
5、用户输入题目数量后,生成一张试卷(同一张卷子不能有相同题目,题目全部为选择题),界面显示第一题的题干和四个选项,用户选择四个选项中的一个后提交,界面显示第二题,…,直至最后一题;
6、最后一题提交后,界面显示分数,分数根据答对的百分比计算;
7、用户在分数界面可选择退出或继续做题。
三.项目实现以及分析:
在使用Qt时才发现Qt是真的很方便,许多功能实现也非常简单好用。
1.登录注册界面:


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

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

在做题界面有四个选项,选完之后点击下一题即可继续做题。
4.公布成绩

在所有题目做完之后,系统会根据正确的题目数量算出对应的百分制的分数。
四.结对编程的教训
由于我们两个都是用C++写的个人项目,所以结对项目也是继续用C++实现,一开始我们被算代数式难住了,后来费了好大力气才解决算式问题,听说隔壁Java有函数可以直接算出结果,顿时心态有点小崩,后来在短信验证的时候发现支持C++的验证码发送不是很多,然后使用了一个网站的发现接口总弄不好发不了短信,后来换了现在使用的这个才得以解决。
五.总结
我从这次结对编程的过程中获益匪浅,之前很少有过做项目的经验,像这样一点点构建、最后成品出来的时候满足感真的非常强烈。并且学会使用Qt这个软件,感觉真的非常好用。同时也不得不说毛陆羽同学真的很厉害,中间有许多难住我们的算代数式等问题,他都巧妙的解决了,改bug的能力也很强,也再次感谢他的辛苦劳动,从他那里我也学到了很多解决问题的方法。
















